summaryrefslogtreecommitdiffstats
path: root/sys/dev/nge/if_nge.c
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>2001-09-19 21:39:26 +0000
committerwpaul <wpaul@FreeBSD.org>2001-09-19 21:39:26 +0000
commite11a32487cd685fb304e41fce511f1bc61642471 (patch)
tree8d1c252aafbce6092ebce7275f2131237e647720 /sys/dev/nge/if_nge.c
parentdcf7dde14532f48c9adcdcea0805c4c998e25902 (diff)
downloadFreeBSD-src-e11a32487cd685fb304e41fce511f1bc61642471.zip
FreeBSD-src-e11a32487cd685fb304e41fce511f1bc61642471.tar.gz
Handle the RX FIFO overflow condition with the rxeof handler instead
of the rxeoc handler for now. The rxeoc handler will reset the link, and the NatSemi chip's RX FIFO will overflow on a 32-bit bus once you start hitting it with 500Mbps or more of traffic. Also increase the size of the RX ring to 128 descriptors (was 64).
Diffstat (limited to 'sys/dev/nge/if_nge.c')
-rw-r--r--sys/dev/nge/if_nge.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c
index be42d04..99ff20c 100644
--- a/sys/dev/nge/if_nge.c
+++ b/sys/dev/nge/if_nge.c
@@ -1495,12 +1495,13 @@ static void nge_intr(arg)
if ((status & NGE_ISR_RX_DESC_OK) ||
(status & NGE_ISR_RX_ERR) ||
+ (status & NGE_ISR_RX_OFLOW) ||
(status & NGE_ISR_RX_OK))
nge_rxeof(sc);
-
+#ifdef notdef
if ((status & NGE_ISR_RX_OFLOW))
nge_rxeoc(sc);
-
+#endif
if (status & NGE_ISR_SYSERR) {
nge_reset(sc);
ifp->if_flags &= ~IFF_RUNNING;
OpenPOWER on IntegriCloud