Providing tcp.c doesnt scribble into the packet itself then yes this
is true. Consider however a packet that is source routed via loopback
then out. You will then need to rejig the header.
> Well, gonna try removing that copy you mention to see if it increases
> performance. Is it done on the loopback device itself ?
Yes. I think we need to clone things more and drop code in the forwarding
routines along the line of
newskb=skb_unshare(skb); /* in case its a clone */
if(!skb)
dropit(skb);
else
{
scribble_on_packet();
sendit();
}
which solves the issues with network taps as well.
Alan