From 91b7e432bcef97e67147aa94aa5b9555b1beb16e Mon Sep 17 00:00:00 2001 From: Rasesh Mody Date: Wed, 20 Jul 2016 12:09:33 -0700 Subject: [PATCH] net/bnx2x: disable fast path interrupts 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 --- 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 95fbad8d1e..a059858eb9 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 c8d2bf2eb8..f3ab35506d 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 + -- 2.20.1