netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] bnx2: Fix lost MSI-X problem on 5709 NICs.
@ 2010-04-27 21:28 Michael Chan
  2010-04-27 21:28 ` [PATCH 2/3] bnx2: Prevent "scheduling while atomic" warning with cnic, bonding and vlan Michael Chan
  2010-04-27 21:38 ` [PATCH 1/3] bnx2: Fix lost MSI-X problem on 5709 NICs David Miller
  0 siblings, 2 replies; 6+ messages in thread
From: Michael Chan @ 2010-04-27 21:28 UTC (permalink / raw)
  To: davem; +Cc: netdev, gospo, jfeeney

It has been reported that under certain heavy traffic conditions in MSI-X
mode, the driver can lose an MSI-X vector causing all packets in the
associated rx/tx ring pair to be dropped.  The problem is caused by
the chip dropping the write to unmask the MSI-X vector by the kernel
(when migrating the IRQ for example).

This can be prevented by increasing the GRC timeout value for these
register read and write operations.

Thanks to Dell for helping us debug this problem.

Signed-off-by: Michael Chan <mchan@broadcom.com>
---
 drivers/net/bnx2.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c
index a257bab..4c1e51e 100644
--- a/drivers/net/bnx2.c
+++ b/drivers/net/bnx2.c
@@ -4759,8 +4759,12 @@ bnx2_reset_chip(struct bnx2 *bp, u32 reset_code)
 		rc = bnx2_alloc_bad_rbuf(bp);
 	}
 
-	if (bp->flags & BNX2_FLAG_USING_MSIX)
+	if (bp->flags & BNX2_FLAG_USING_MSIX) {
 		bnx2_setup_msix_tbl(bp);
+		/* Prevent MSIX table reads and write from timing out */
+		REG_WR(bp, BNX2_MISC_ECO_HW_CTL,
+			BNX2_MISC_ECO_HW_CTL_LARGE_GRC_TMOUT_EN);
+	}
 
 	return rc;
 }
-- 
1.6.4.GIT



^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-04-27 21:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-27 21:28 [PATCH 1/3] bnx2: Fix lost MSI-X problem on 5709 NICs Michael Chan
2010-04-27 21:28 ` [PATCH 2/3] bnx2: Prevent "scheduling while atomic" warning with cnic, bonding and vlan Michael Chan
2010-04-27 21:28   ` [PATCH 3/3] bnx2: Update version to 2.0.9 Michael Chan
2010-04-27 21:38     ` David Miller
2010-04-27 21:38   ` [PATCH 2/3] bnx2: Prevent "scheduling while atomic" warning with cnic, bonding and vlan David Miller
2010-04-27 21:38 ` [PATCH 1/3] bnx2: Fix lost MSI-X problem on 5709 NICs David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).