[ipxe-devel] About recent TCP stack improvements
Michael Brown
mbrown at fensystems.co.uk
Fri Jul 23 11:44:38 UTC 2010
On Friday 23 Jul 2010 06:59:56 Guo-Fu Tseng wrote:
> BTW, do you think it's reasonable to do something like:
> "[tcp] Cleanup TCP closing actions" patch which it sumbitted
> on gpxe-devel list?[2]
>
> I think it might be useful for following reasons:
> 1. We don't have to think of what would tcp_close() do if we call it
> somewhere. The behavior of calling tcp_close() would be always the same.
> 2. Reduced some duplicate code.
> 3. We don't have to separate tcp_close() from tcp_rx_fin(). And have the
> same behavior. Seems a little more neat to me.
>
> Above results are accomplished by:
> 1. Separate terminate action.
> 2. Separate terminate action.
> 3. Separate nullify xfer interface.
> (Which is part of "[tcp] Receive and Close flow adjustment"[1])
>
> [1]:
> http://git.etherboot.org/?p=people/cooldavid/gpxe.git;a=commitdiff;h=8fc73d
> 18c8528cbcc1b1c3849b51d3ee3682c937 [2]:
> http://git.etherboot.org/?p=people/cooldavid/gpxe.git;a=commitdiff;h=660e96
> 200f67c981e7397eb05fbb4e91ed253f50
Simplifying the closing actions would be good, though I'm not immediately
clear on what the patch would look like. How about putting together a patch
for
[tcp] Deliver data only after updating TCP state
i.e. the "struct list_head received ..." code I described, which *doesn't*
require tcp_xfer_shutdown() to be split out of tcp_close(), and then adding
the support for active/passive close and any cleanup of closing actions on top
of that? (It's up to you, but that's how I would approach it.)
Michael
More information about the ipxe-devel
mailing list