"Stephen R. van den Berg" <[email protected]> wrote: > Well, I know for a fact that something needs fixing here. > The problem is timing related, so it's not easily reproduced. > As far as I can remember, the problem involved the socket still having > unsent data in it, then being closed, the unsent data already in the kernel > buffers of the socket then gets dropped by the kernel instead of still > being sent. > The problem is a rare occurrence, and it was a pain to actually diagnose it.
How old is the patch? I've diagnosed and fixed problems like that too - disconnect() was sometimes called from the read callback when it should be called by the write cb instead. See the comments in close_cb.
