On Monday 07 April 2008 17:35:28 David Miller wrote: > From: Rusty Russell <rusty@xxxxxxxxxxxxxxx> > Date: Mon, 7 Apr 2008 17:24:51 +1000 > > > On Monday 07 April 2008 15:13:44 Herbert Xu wrote: > > > On second thought, this is not going to work. The network stack > > > can clone individual pages out of this skb and put it into a new > > > skb. Therefore whatever scheme we come up with will either need > > > to be page-based, or add a flag to tell the network stack that it > > > can't clone those pages. > > > > Erk... I'll put in the latter for now. A page-level solution is not > > really an option: if userspace hands us mmaped pages for example. > > Keep in mind that the core of the TCP stack really depends > upon being able to slice and dice paged SKBs as is pleases > in order to send packets out. > > In fact, it also does such splitting during SACK processing. > > It really is a base requirement for efficient TSO support. > Otherwise the above operations would be so incredibly > expensive we might as well rip all of the TSO support out. In this case that's OK; these are only for packets coming from userspace/guest, so the only interaction with the tcp code is possibly as a recipient. If tcp wanted to do zero-copy aio xmit, I think we'd need something else. Cheers, Rusty. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization