Page MenuHomeFreeBSD

D17931.diff
No OneTemporary

D17931.diff

Index: head/sys/dev/e1000/em_txrx.c
===================================================================
--- head/sys/dev/e1000/em_txrx.c
+++ head/sys/dev/e1000/em_txrx.c
@@ -458,7 +458,13 @@
ntxd = scctx->isc_ntxd[0];
do {
delta = (int32_t)cur - (int32_t)prev;
+ /*
+ * XXX This appears to be a hack for first-packet.
+ * A correct fix would prevent prev == cur in the first place.
+ */
MPASS(prev == 0 || delta != 0);
+ if (prev == 0 && cur == 0)
+ delta += 1;
if (delta < 0)
delta += ntxd;
DPRINTF(iflib_get_dev(adapter->ctx),
Index: head/sys/dev/e1000/igb_txrx.c
===================================================================
--- head/sys/dev/e1000/igb_txrx.c
+++ head/sys/dev/e1000/igb_txrx.c
@@ -333,7 +333,13 @@
ntxd = scctx->isc_ntxd[0];
do {
delta = (int32_t)cur - (int32_t)prev;
+ /*
+ * XXX This appears to be a hack for first-packet.
+ * A correct fix would prevent prev == cur in the first place.
+ */
MPASS(prev == 0 || delta != 0);
+ if (prev == 0 && cur == 0)
+ delta += 1;
if (delta < 0)
delta += ntxd;

File Metadata

Mime Type
text/plain
Expires
Sun, Oct 19, 8:02 AM (5 h, 28 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23917104
Default Alt Text
D17931.diff (1 KB)

Event Timeline