On Tue, 12 Feb 2008 14:01:32 -0800 PJ Waskiewicz <[EMAIL PROTECTED]> wrote:
> This patch adds the ability for device drivers to control the size of the > TSO frames being sent to them, per TCP connection. By setting the > netdevice's max_gso_frame_size value, the socket layer will set the GSO > frame size based on that value. This will propogate into the TCP layer, > and send TSO's of that size to the hardware. > > This can be desirable to help tune the bursty nature of TSO on a > per-adapter basis, where one may have 1 GbE and 10 GbE devices coexisting > in a system, one running multiqueue and the other not, etc. > > This can also be desirable for devices that cannot support full 64 KB > TSO's, but still want to benefit from some level of segmentation > offloading. > > Signed-off-by: Peter P Waskiewicz Jr <[EMAIL PROTECTED]> > --- > > include/linux/netdevice.h | 6 ++++++ > include/net/sock.h | 2 ++ > net/core/dev.c | 1 + > net/core/sock.c | 6 ++++-- > net/ipv4/tcp_output.c | 4 ++-- > 5 files changed, 15 insertions(+), 4 deletions(-) > > diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h > index 047d432..ed1cc32 100644 > --- a/include/linux/netdevice.h > +++ b/include/linux/netdevice.h > @@ -616,6 +616,7 @@ struct net_device > > /* Partially transmitted GSO packet. */ > struct sk_buff *gso_skb; > + int max_gso_frame_size; should use unsigned rather than int (yes the older code is sloppy). Also what about IPV6? -- Stephen Hemminger <[EMAIL PROTECTED]> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html