David S. Miller writes:
> > 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
> :-)
The driver has to wait for full netif_receive_skb() as far as I understand
> I guess for ipv4 we would do such a "local copybreak" at
> the beginning of net/ipv4/ip_input.c:ip_local_deliver().
That would be perfect yes.
> 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?
Yes continue processing and return skb consumed to driver.
Cheers.
--ro
-
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