zhhyu7 commented on PR #18011: URL: https://github.com/apache/nuttx/pull/18011#issuecomment-3803965898
> 0x4201e974: psock_tcp_send at tcp_send_buffered.c:1534 (discriminator 1) @fdcavalcanti The total amount of IOB configured for the board is too small. When iperf writes 16k of data at once, if the write queue only uses unthrottled IOBs, there is a relatively high probability that the data in the write queue will exhaust the unthrottled IOBs but still be requesting a write buffer. At this point, the thread will block here, unable to trigger the subsequent tcp_send_txnotify, causing the data not to be sent out, and thus unable to receive an ack to release these IOBs, so it will never recover. You can try configuring CONFIG_NET_SEND_BUFSIZE=12000 (CONFIG_IOB_BUFSIZE * (CONFIG_IOB_NBUFFERS - CONFIG_IOB_THROTTLE) - 4k), it should no longer get stuck. Please help to include this patch and the configuration of CONFIG_NET_SEND_BUFSIZE for verification when you have time. Thank you very much. I am synchronously optimizing the scenario where the TCP buffer writes too much data in a single operation (exceeding the total number of valid IOBs). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
