[dpdk-dev] [PATCH v2 1/2] bnx2x: disable fast path interrupts

Rasesh Mody rasesh.mody at qlogic.com
Wed Jul 20 21:09:33 CEST 2016


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 at qlogic.com>
---
 drivers/net/bnx2x/bnx2x.c        |    2 +-
 drivers/net/bnx2x/bnx2x_ethdev.c |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c
index 95fbad8..a059858 100644
--- a/drivers/net/bnx2x/bnx2x.c
+++ b/drivers/net/bnx2x/bnx2x.c
@@ -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);
 }
 
 /*
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index c8d2bf2..f97dd5b 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -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 +
-- 
1.7.10.3



More information about the dev mailing list