net: tun: record RX queue in skb before do_xdp_generic()
[ Upstream commit 3fe260e00cd0bf0be853c48fcc1e19853df615bb ] This allows netif_receive_generic_xdp() to correctly determine the RX queue from which the skb is coming, so that the context passed to the XDP program will contain the correct RX queue index. Signed-off-by: Gilberto Bertin <me@jibi.io> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
f6b264f2a0
commit
bb54dcca3f
@ -1925,6 +1925,7 @@ drop:
|
||||
|
||||
skb_reset_network_header(skb);
|
||||
skb_probe_transport_header(skb);
|
||||
skb_record_rx_queue(skb, tfile->queue_index);
|
||||
|
||||
if (skb_xdp) {
|
||||
struct bpf_prog *xdp_prog;
|
||||
@ -2492,6 +2493,7 @@ build:
|
||||
skb->protocol = eth_type_trans(skb, tun->dev);
|
||||
skb_reset_network_header(skb);
|
||||
skb_probe_transport_header(skb);
|
||||
skb_record_rx_queue(skb, tfile->queue_index);
|
||||
|
||||
if (skb_xdp) {
|
||||
err = do_xdp_generic(xdp_prog, skb);
|
||||
@ -2503,7 +2505,6 @@ build:
|
||||
!tfile->detached)
|
||||
rxhash = __skb_get_hash_symmetric(skb);
|
||||
|
||||
skb_record_rx_queue(skb, tfile->queue_index);
|
||||
netif_receive_skb(skb);
|
||||
|
||||
/* No need for get_cpu_ptr() here since this function is
|
||||
|
Loading…
x
Reference in New Issue
Block a user