Re: Speed of memcpy, csum_partial and csum_partial_copy

Alan Cox (alan@lxorguk.ukuu.org.uk)
Sat, 8 Jun 1996 22:33:08 +0100 (BST)


> In short, the two copies that occur in TCP loopback (first from the
> sender into the kernel, and then from the kernel into the receiver) alone
> account for 60% of the TCP stack..

There are three for TCP loopback unless someone has fiddled recently. We
copy

user->sk_buff [with csum]
sk_buff to sk_buff
sk_buff->user [skip csum]

While it seems a really dumb thing to do it makes sense as there may
be retransmissions and thus the receiver cannot go using the queue pointers
of the senders buffer copy. Its a bad case solely applicable to loopback,
and if we are going to optimise loopback tcp we should do the solaris trick
and dump everything. In the mean time thats what AF_UNIX was invented for.

Alan