>From: David Marchand <david.march...@redhat.com>
>Sent: Tuesday, June 25, 2019 6:39 AM
>
>----------------------------------------------------------------------
>rte_intr_enable/rte_intr_disable configure the interrupt context on the
>kernel side (either uio or vfio).
>In VFIO case, calling it from the interrupt handlers triggers an unneeded
>interrupt handlers reconfiguration.
>During this reconfiguration window, the device can trigger interrupts which
>are left unserviced.
>
>Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1654824
>Fixes: 245aec289338 ("net/qede: fix legacy interrupt mode")
>Fixes: 2ea6f76aff40 ("qede: add core driver")
>Cc: sta...@dpdk.org
>
>Signed-off-by: David Marchand <david.march...@redhat.com>
>---

Change looks good, thanks.

Acked-by: Rasesh Mody <rm...@marvell.com>

> drivers/net/qede/qede_ethdev.c | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
>diff --git a/drivers/net/qede/qede_ethdev.c
>b/drivers/net/qede/qede_ethdev.c index 82363e6..807016a 100644
>--- a/drivers/net/qede/qede_ethdev.c
>+++ b/drivers/net/qede/qede_ethdev.c
>@@ -245,12 +245,8 @@ static void qede_interrupt_action(struct ecore_hwfn
>*p_hwfn)
>
>       /* Check if our device actually raised an interrupt */
>       status =
>ecore_int_igu_read_sisr_reg(ECORE_LEADING_HWFN(edev));
>-      if (status & 0x1) {
>+      if (status & 0x1)
>               qede_interrupt_action(ECORE_LEADING_HWFN(edev));
>-
>-              if (rte_intr_enable(eth_dev->intr_handle))
>-                      DP_ERR(edev, "rte_intr_enable failed\n");
>-      }
> }
>
> static void
>@@ -261,8 +257,6 @@ static void qede_interrupt_action(struct ecore_hwfn
>*p_hwfn)
>       struct ecore_dev *edev = &qdev->edev;
>
>       qede_interrupt_action(ECORE_LEADING_HWFN(edev));
>-      if (rte_intr_enable(eth_dev->intr_handle))
>-              DP_ERR(edev, "rte_intr_enable failed\n");
> }
>
> static void
>--
>1.8.3.1

Reply via email to