net: add function to retrieve original skb device using NAPI ID
authorMiroslav Lichvar <[email protected]>
Fri, 19 May 2017 15:52:37 +0000 (17:52 +0200)
committerDavid S. Miller <[email protected]>
Sun, 21 May 2017 17:37:32 +0000 (13:37 -0400)
commit90b602f80397657429373ca009f98aec4dd3c553
treeb6ce4214ce48199983704bf95540370472b5da44
parente3412575488ac2408f737a14296cce34c9d8b4f8
net: add function to retrieve original skb device using NAPI ID

Since commit b68581778cd0 ("net: Make skb->skb_iif always track
skb->dev") skbs don't have the original index of the interface which
received the packet. This information is now needed for a new control
message related to hardware timestamping.

Instead of adding a new field to skb, we can find the device by the NAPI
ID if it is available, i.e. CONFIG_NET_RX_BUSY_POLL is enabled and the
driver is using NAPI. Add dev_get_by_napi_id() and also skb_napi_id() to
hide the CONFIG_NET_RX_BUSY_POLL ifdef.

CC: Richard Cochran <[email protected]>
Suggested-by: Willem de Bruijn <[email protected]>
Acked-by: Willem de Bruijn <[email protected]>
Signed-off-by: Miroslav Lichvar <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
include/linux/netdevice.h
include/linux/skbuff.h
net/core/dev.c