Page MenuHomeFreeBSD

D11712.diff
No OneTemporary

D11712.diff

Index: head/sys/dev/ixgbe/ix_txrx.c
===================================================================
--- head/sys/dev/ixgbe/ix_txrx.c
+++ head/sys/dev/ixgbe/ix_txrx.c
@@ -1593,9 +1593,7 @@
if (tcp_lro_rx(&rxr->lro, m, 0) == 0)
return;
}
- IXGBE_RX_UNLOCK(rxr);
(*ifp->if_input)(ifp, m);
- IXGBE_RX_LOCK(rxr);
} /* ixgbe_rx_input */
/************************************************************************
@@ -1880,7 +1878,9 @@
/* Now send to the stack or do LRO */
if (sendmp != NULL) {
rxr->next_to_check = i;
+ IXGBE_RX_UNLOCK(rxr);
ixgbe_rx_input(rxr, ifp, sendmp, ptype);
+ IXGBE_RX_LOCK(rxr);
i = rxr->next_to_check;
}
@@ -1897,12 +1897,12 @@
rxr->next_to_check = i;
+ IXGBE_RX_UNLOCK(rxr);
+
/*
* Flush any outstanding LRO work
*/
tcp_lro_flush_all(lro);
-
- IXGBE_RX_UNLOCK(rxr);
/*
* Still have cleaning to do?

File Metadata

Mime Type
text/plain
Expires
Sun, Nov 17, 9:29 PM (21 h, 59 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14684901
Default Alt Text
D11712.diff (890 B)

Event Timeline