Re: [PATCH][RFC 23/23]: Support for zero-copy TCP transmit of user space data

Vladislav Bolkhovitin
2008-12-24T17:48:45Z

Evgeniy Polyakov, on 12/24/2008 05:44 PM wrote:
> On Wed, Dec 24, 2008 at 05:37:51PM +0300, Vladislav Bolkhovitin (vst@vlnb.net) wrote:
>>> Yes, it is simpler and cleaner, but it requires additional allocation.
>>> This is additional (and quite noticeble) overhead.
>> Not necessary requires. For instance, in iscsi-scst sk_transaction_token
>> can (and should) be part of iSCSI cmd structure, so no additional
>> allocations would be needed.
>
> This is special case, I'm not sure it is always possible to cache that
> token and attach to every skb, but if it can be done, then of course
> this does not end up with additional overhead.

I think in most cases there would be possibility to embed
sk_transaction_token to some higher level structure. E.g. Xen apparently
should have something to track packets passed through host/guest
boundary. From other side, kmem cache is too well polished to have much
overhead. I doubt, you would even notice it in this application. In most
cases allocation of such small object in it using SLUB is just about the
same as a list_del() under disabled IRQs.

Vlad