lwIP - A Lightweight TCP/IP stack - Bugs: bug #34176, select after non-blocking send...
You are not allowed to post comments on this tracker with your current authentication level.
bug #34176: select after non-blocking send times out
Submitter: | Cyril <xryl669> | ||
Submitted: | Tue 30 Aug 2011 05:14:26 PM UTC | ||
Category: | TCP | Severity: | 2 - Minor |
Item Group: | Faulty Behaviour | Status: | Fixed |
Privacy: | Public | Assigned to: | goldsimon |
Open/Closed: | Closed | Planned Release: | None |
lwIP version: | 1.4.0 |
Jump to the original submission
Wed 19 Oct 2011 11:07:26 AM UTC, comment #7: |
Simon Goldschmidt <goldsimon> |
Wed 19 Oct 2011 09:16:44 AM UTC, comment #6: The comment above TCP_SNDLOWAT says it must be less than TCP_SND_BUF.
|
Amir Shalem <amirshalem> |
Tue 18 Oct 2011 06:31:43 PM UTC, comment #5: I've changed these defines to:
|
Simon Goldschmidt <goldsimon> |
Tue 27 Sep 2011 07:09:11 PM UTC, comment #4: ALright, so no bug in lwIP. But we have to decide whether we want to change the defaults in opt.h to give decent performance or to minimize RAM usage (while sacrifying performance). I'd vote for the first. |
Simon Goldschmidt <goldsimon> |
Fri 23 Sep 2011 09:37:00 AM UTC, comment #3: Well, since we had another bug (EMSGSIZE) that required patching, and a buggy ethernet switch, I've tried many things to solve this and finally it works.
|
Cyril <xryl669> |
Wed 21 Sep 2011 05:44:26 PM UTC, comment #2: Any update on this, please? |
Simon Goldschmidt <goldsimon> |
Fri 09 Sep 2011 06:55:44 PM UTC, comment #1: This works for me, however, I can see that it might not work with the defaults from opt.h.
|
Simon Goldschmidt <goldsimon> |
Tue 30 Aug 2011 05:14:26 PM UTC, original submission:
Hi,
|
Cyril <xryl669> |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 8 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2011-10-18 | goldsimon | Category | None | TCP | |
Status | Works For Me | Fixed | |||
Open/Closed | Open | Closed | |||
Planned Release | 1.4.1 | ||||
Summary | select after non-blocking send timesout | select after non-blocking send times out | |||
2011-09-09 | goldsimon | Severity | 3 - Normal | 2 - Minor | |
Status | None | Works For Me | |||
Assigned to | None | goldsimon |
Powered by Savane 3.13-caa5.
Corresponding source code
Right. What's missing is limiting it to "TCP_SND_BUF - 1". However, that's only a problem for the default value of TCP_SND_BUF (2 TCP_MSS). And I think we should change that default value to "4 TCP_MSS" as with 2 * mss and a remote host implementing delayed ACKs, you break down from a sliding window into a ping-pong (send 2 segments, wait for ACK). It doesn't break things, but it slows down transmission.
Anyway, I've added a MIN(old-value, TCP_SND_BUF - 1), which should fix things.
Thanks for checking this.