Re: [PATCH] select appropriate skb size in tcp_sendmsg when TSO is used

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

 



On Wed, 20 Oct 2004 16:18:02 +0200
Thomas Spatzier <thomas.spatzier@de.ibm.com> wrote:

> > TSO without NETIF_F_SG is not worth it.
> 
> Ok, but when exactly would that if statement take effect?
> When I send very large tcp packets I never get large skbs
> given into my driver from the stack.
> The internal if statement if (tmp >= pgbreak ...
> never becomes true since the mss_cache_std value is always
> set to MTU size - header length, in my case 1492 - 52 = 1440.
> 
> So, how can I get the stack to exploit TSO?

select_size() is selecting the size of the linear
non-paged portion of the SKB.  When we're doing
NETIF_F_SG we can use page based data storage
for all of the non-TCP/IP/hw header data.

That is what select_size() is calculating, the size
of the "header area".  The data is tacked onto the packet
using the page vector area.

Look at the callers of select_size(), they use a local
variable "mss_now" which is calculated to be the TSO
mss when appropriate by tcp_current_mss().

__Stop__ looking at select_size().  It has nothing to do
with using TSO mss or not for frame size calculation.

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux