tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

TCP timer confusion



> This looks completely broken to me, but that's most probably because of me,
> not because of the code.
After ws@ was so kind as to spend more than an hour with me investigating
the code this evening, we both think there's something grossly wrong here.

Before the advent of callouts, the code was using the macros from sys/protosw.h
and tcp_slowtimeo() would explicitly disarm a timer after it fired.
This means that before the rewrite to use callouts, on an expired timer,
TCP_TIMER_ISARMED would usually be false. But now, after the rewrite,
TCP_TIMER_ISARMED will be true, so the code will not arm the timer again.

However, this still doesn't explain why the stack refuses to send even if
more data is arriving in the send queue.


Home | Main Index | Thread Index | Old Index