Page MenuHomeFreeBSD

D18368.diff
No OneTemporary

D18368.diff

Index: head/sys/dev/ixgbe/ix_txrx.c
===================================================================
--- head/sys/dev/ixgbe/ix_txrx.c
+++ head/sys/dev/ixgbe/ix_txrx.c
@@ -297,6 +297,8 @@
ntxd = scctx->isc_ntxd[0];
do {
delta = (int32_t)cur - (int32_t)prev;
+ if (prev == 0 && cur == 0)
+ delta += 1;
if (delta < 0)
delta += ntxd;
Index: head/sys/dev/ixl/ixl_txrx.c
===================================================================
--- head/sys/dev/ixl/ixl_txrx.c
+++ head/sys/dev/ixl/ixl_txrx.c
@@ -516,7 +516,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;
#if 0

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 29, 12:16 PM (2 h, 26 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30481303
Default Alt Text
D18368.diff (875 B)

Event Timeline