From: Eric Dumazet <[email protected]>
Date: Mon, 02 Mar 2015 20:02:05 -0800

> About the GRO layout change, reason why 'struct sk_buff *last;' is at
> the end of struct napi_gro_cb is that this field is not used in fast
> path.

Understood.

While reviewing this I noticed that the jiffies timestamp in GRO cb
could really be u32 if we want instead of full "unsigned long".

> Note : We could try to use one bit in skb to advertise zero shinfo(skb).
> 
> Many skbs have a zeroed shinfo() (but shinfo->dataref == 1) , and
> dereferencing skb_shinfo adds a cache line miss. 
> 
> -> We could avoid memset(shinfo, 0, offsetof(struct skb_shared_info,
> dataref)) & atomic_set(&shinfo->dataref, 1); 
> 
>  in alloc_skb() and friends completely.
> 
> Unfortunately this kind of change would be quite invasive...

Right, all these kinds of things touch everything.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to