Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Debian Kernel (http://www.linux-archive.org/debian-kernel/)
-   -   Bug#618341: bnx2: MSI-X hang on 5709 NICs -> nic dead (http://www.linux-archive.org/debian-kernel/501031-bug-618341-bnx2-msi-x-hang-5709-nics-nic-dead.html)

Andreas Schuldei 03-14-2011 12:57 PM

Bug#618341: bnx2: MSI-X hang on 5709 NICs -> nic dead
 
Package: linux-2.6
Version: 2.6.32-bpo.5
Severity: critical
Tags: squeeze patch lenny
Justification: breaks the whole system





http://marc.info/?l=linux-netdev&m=127240304211909&w=2

here is the description from the mail , repeated:

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>



we are using the 2.6.32 kernel and are bitten by this frequently.



vers/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


-- System Information:
Debian Release: 6.0
APT prefers proposed-updates
APT policy: (500, 'proposed-updates'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.37-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash



--
To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 20110314135717.11072.32078.reportbug@jesaja.schuld ei.org">http://lists.debian.org/20110314135717.11072.32078.reportbug@jesaja.schuld ei.org


All times are GMT. The time now is 05:14 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.