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:10:32 +0000
commitcb2cd58dbd56f734f4346ce4db3d0412b2809667 (patch)
tree38fc739c5ebfaa66ae0d456b1dc0deafd26fcf18
parentbd8cecc466adeca0763cca674f83bfcc3a751356 (diff)
downloadsrc-cb2cd58dbd56f734f4346ce4db3d0412b2809667.tar.gz
src-cb2cd58dbd56f734f4346ce4db3d0412b2809667.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 b8005e213621..29a840067c62 100644
--- a/sys/dev/cxgbe/tom/t4_tls.c
+++ b/sys/dev/cxgbe/tom/t4_tls.c
@@ -1004,7 +1004,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;
@@ -1075,22 +1075,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);