diff mbox series

[12/12] net/tcp: define a fallback value for rcv_wnd size

Message ID 20240627113939.100620-12-mikhail.kshevetskiy@iopsys.eu
State Changes Requested
Delegated to: Peter Robinson
Headers show
Series [01/12] net/tcp: fix TCP options processing | expand

Commit Message

Mikhail Kshevetskiy June 27, 2024, 11:39 a.m. UTC
Some driver implements it's own network packet pool, so PKTBUFSRX is zero.
This results in zero-size TCP receive window, so data transfer doesn't
work. Avod it by setting a reasonable fallback value.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
---
 net/tcp.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/net/tcp.c b/net/tcp.c
index c0045e32198..3f12c71e1f7 100644
--- a/net/tcp.c
+++ b/net/tcp.c
@@ -30,7 +30,11 @@ 
 #define TCP_SEND_TIMEOUT	2000UL
 #define TCP_RX_INACTIVE_TIMEOUT	30000UL
 #define TCP_START_SEQ_INC	2153	/* just large prime number */
-#define TCP_RCV_WND_SIZE	(PKTBUFSRX * TCP_MSS)
+#if PKTBUFSRX != 0
+  #define TCP_RCV_WND_SIZE	(PKTBUFSRX * TCP_MSS)
+#else
+  #define TCP_RCV_WND_SIZE	(4 * TCP_MSS)
+#endif
 
 #define TCP_PACKET_OK		0
 #define TCP_PACKET_DROP		1