aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ixl/ixl_txrx.c
diff options
context:
space:
mode:
authorSepherosa Ziehau <sephe@FreeBSD.org>2016-04-01 06:28:33 +0000
committerSepherosa Ziehau <sephe@FreeBSD.org>2016-04-01 06:28:33 +0000
commit6dd38b8716bd9c53029707749f00ced53c5ceb7c (patch)
tree35cb00c20034dc9b981e3d82e79fbab135221de3 /sys/dev/ixl/ixl_txrx.c
parent04c247a1d073b57419345ae83581f2cb4db7d61f (diff)
downloadsrc-6dd38b8716bd9c53029707749f00ced53c5ceb7c.tar.gz
src-6dd38b8716bd9c53029707749f00ced53c5ceb7c.zip
tcp/lro: Use tcp_lro_flush_all in device drivers to avoid code duplication
And factor out tcp_lro_rx_done, which deduplicates the same logic with netinet/tcp_lro.c Reviewed by: gallatin (1st version), hps, zbb, np, Dexuan Cui <decui microsoft com> Sponsored by: Microsoft OSTC Differential Revision: https://reviews.freebsd.org/D5725
Notes
Notes: svn path=/head/; revision=297482
Diffstat (limited to 'sys/dev/ixl/ixl_txrx.c')
-rw-r--r--sys/dev/ixl/ixl_txrx.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/sys/dev/ixl/ixl_txrx.c b/sys/dev/ixl/ixl_txrx.c
index 0ae7433e8e8d..ca6e252b3fea 100644
--- a/sys/dev/ixl/ixl_txrx.c
+++ b/sys/dev/ixl/ixl_txrx.c
@@ -1511,7 +1511,6 @@ ixl_rxeof(struct ixl_queue *que, int count)
struct ifnet *ifp = vsi->ifp;
#if defined(INET6) || defined(INET)
struct lro_ctrl *lro = &rxr->lro;
- struct lro_entry *queued;
#endif
int i, nextp, processed = 0;
union i40e_rx_desc *cur;
@@ -1735,10 +1734,7 @@ next_desc:
/*
* Flush any outstanding LRO work
*/
- while ((queued = SLIST_FIRST(&lro->lro_active)) != NULL) {
- SLIST_REMOVE_HEAD(&lro->lro_active, next);
- tcp_lro_flush(lro, queued);
- }
+ tcp_lro_flush_all(lro);
#endif
IXL_RX_UNLOCK(rxr);