From: Robert Olsson <[EMAIL PROTECTED]> Date: Thu, 8 Dec 2005 10:20:43 +0100
> Why not remove copybreak from the drivers and do eventual copybreak after we > have looked up the packet. This way we can get copybreak for all drivers and > we can do this only for packets with has destination to localhost and ignore > the forwarding packets. > > This will lead to an extra alloc in case of copybreak but it could possible > to avoid this with some function giving copybreak feedback to driver i.e via > netif_receive_skb_cpybrk() which tells driver if skb is consumed or not. It is not clear if we want to wait the whole netif_receive_skb() execution to get this status. That can take a long time to execute :-) But it is an interesting idea. I guess for ipv4 we would do such a "local copybreak" at the beginning of net/ipv4/ip_input.c:ip_local_deliver(). The next question is what to do on copybreak allocation memory failure. Free the original SKB too and just return? Or do we just continue processing with the original SKB? - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html