aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2023-09-08 23:30:52 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2023-10-11 15:09:52 +0000
commitdcb7939898635424daf4c65179bbac75fcb0b09b (patch)
treeaa886596dc6ec85f613713bf52c3e3f91e6fc67e
parenta2128fd12d6e3cf506541429ff3e4c29994c7c80 (diff)
downloadsrc-dcb7939898635424daf4c65179bbac75fcb0b09b.tar.gz
src-dcb7939898635424daf4c65179bbac75fcb0b09b.zip
cxgbe t4_tls: Don't bother returning RX credits for a protocol receive error
Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41689 (cherry picked from commit 75af2d951cce7d51d2033405f96f083c01f39f04)
-rw-r--r--sys/dev/cxgbe/tom/t4_tls.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c
index 3640ef410ca8..dcdbccb4fe7e 100644
--- a/sys/dev/cxgbe/tom/t4_tls.c
+++ b/sys/dev/cxgbe/tom/t4_tls.c
@@ -1125,7 +1125,7 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep,
struct tcpcb *tp;
struct socket *so;
struct sockbuf *sb;
- int len, rx_credits;
+ int len;
len = m->m_pkthdr.len;
@@ -1196,22 +1196,6 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep,
so->so_error = EBADMSG;
out:
- /*
- * This connection is going to die anyway, so probably don't
- * need to bother with returning credits.
- */
- rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0;
-#ifdef VERBOSE_TRACES
- CTR4(KTR_CXGBE, "%s: tid %u rx_credits %u rcv_wnd %u",
- __func__, toep->tid, rx_credits, tp->rcv_wnd);
-#endif
- if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) {
- rx_credits = send_rx_credits(toep->vi->adapter, toep,
- rx_credits);
- tp->rcv_wnd += rx_credits;
- tp->rcv_adv += rx_credits;
- }
-
sorwakeup_locked(so);
SOCKBUF_UNLOCK_ASSERT(sb);