On Thu, 2017-02-16 at 23:07 -0800, Eric Dumazet wrote: > This adds a cost to fast path. tcp_sendmsg() is insane. > > We have one skb granularity (64KB) already for SO_SNDBUF, regardless of > TCP_NOTSENT_LOWAT being used or not.
Note that this granularity is wanted for performance, otherwise our per task 32KB page (current->task_frag) might be split in very small chunks over multiple sockets on applications dealing with many TCP sockets. Having nice initial 64KB TSO packets with 2 or 3 frags allows for better sack coalescing Ref : https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=3613b3dbd1ade9a6a626dae1f608c57638eb5e8a Thanks.