Re: TCP Segmentation Offloading (TSO)

From: Andi Kleen (ak@suse.de)
Date: Tue Sep 03 2002 - 05:10:41 EST


On Tue, Sep 03, 2002 at 03:00:25AM -0700, David S. Miller wrote:
> From: Andi Kleen <ak@suse.de>
> Date: 03 Sep 2002 11:05:30 +0200
>
> x86-64 handles it (also in csum-copy). I think at least Alpha does it
> too (that is where I stole the C csum-partial base from) But it's ugly.
> See the odd hack.
>
> Ok I think we really need to fix this then in the arches
> where broken. Let's do an audit. :-)

Yes, it's needed because users can pass unaligned addresses in from
userspace to sendmsg

>
> I question if x86 is broken at all. It checks odd lengths
> and x86 handles odd memory accesses transparently. Please,
> some x86 guru make some comments here :-)

x86 is just slower for this case because all accesses will eat the
unaligned penalty, but should work.

I could have done it this way on x86-64 too, but chose to handle it.

> It looks like sparc64 is the only platform where oddly aligned buffer
> can truly cause problems and I can fix that easily enough.

It could allow everybody to generate packets with bogus addresses on
the network.

I suspect on sparc64 it will just be all handled by the unalignment handler
in the kernel ? If yes it will be incredibly slow, but should work.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 07 2002 - 22:00:17 EST