Date: Fri, 17 Sep 2010 22:05:27 +0000 (UTC) From: Andre Oppermann <andre@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/netinet tcp_output.c Message-ID: <201009172205.o8HM5mAt074497@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
andre 2010-09-17 22:05:27 UTC FreeBSD src repository Modified files: sys/netinet tcp_output.c Log: SVN rev 212803 on 2010-09-17 22:05:27Z by andre Rearrange the TSO code to make it more readable and to clearly separate the decision logic, of whether we can do TSO, and the calculation of the burst length into two distinct parts. Change the way the TSO burst length calculation is done. While TSO could do bursts of 65535 bytes that can't be represented in ip_len together with the IP and TCP header. Account for that and use IP_MAXPACKET instead of TCP_MAXWIN as base constant (both have the same value of 64K). When more data is available prevent less than MSS sized segments from being sent during the current TSO burst. Add two more KASSERTs to ensure the integrity of the packets. Tested by: Ben Wilber <ben-at-desync com> MFC after: 10 days Revision Changes Path 1.172 +49 -33 src/sys/netinet/tcp_output.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009172205.o8HM5mAt074497>