net/bnx2x: disable fast path interrupts
authorRasesh Mody <rasesh.mody@qlogic.com>
Wed, 20 Jul 2016 19:09:33 +0000 (12:09 -0700)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 21 Jul 2016 22:36:10 +0000 (00:36 +0200)
Disable fastpath interrupts and remove unneeded delay in
bnx2x_interrupt_action(). This patch fixes and prevents performance
degradation (upto 50% drop) for BNX2X PMD.

Fixes: 540a2110 ("bnx2x: driver core")

Signed-off-by: Rasesh Mody <rasesh.mody@qlogic.com>
drivers/net/bnx2x/bnx2x.c
drivers/net/bnx2x/bnx2x_ethdev.c

index 95fbad8..a059858 100644 (file)
@@ -4507,7 +4507,7 @@ static void bnx2x_handle_fp_tq(struct bnx2x_fastpath *fp, int scan_fp)
        }
 
        bnx2x_ack_sb(sc, fp->igu_sb_id, USTORM_ID,
-                  le16toh(fp->fp_hc_idx), IGU_INT_ENABLE, 1);
+                  le16toh(fp->fp_hc_idx), IGU_INT_DISABLE, 1);
 }
 
 /*
index c8d2bf2..f3ab355 100644 (file)
@@ -107,8 +107,8 @@ bnx2x_interrupt_action(struct rte_eth_dev *dev)
 
        PMD_DEBUG_PERIODIC_LOG(INFO, "Interrupt handled");
 
-       if (bnx2x_intr_legacy(sc, 0))
-               DELAY_MS(250);
+       bnx2x_intr_legacy(sc, 0);
+
        if (sc->periodic_flags & PERIODIC_GO)
                bnx2x_periodic_callout(sc);
        link_status = REG_RD(sc, sc->link_params.shmem_base +