From: David S. Miller Date: Mon, 19 Nov 2018 18:55:00 +0000 (-0800) Subject: Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=f2be6d710d25be7d8d13f49f713d69dea9c71d57;p=linux.git Merge git://git./linux/kernel/git/davem/net --- f2be6d710d25be7d8d13f49f713d69dea9c71d57 diff --cc drivers/net/tun.c index 1e9da697081d1,e244f5d7512a6..56575f88d1fdb --- a/drivers/net/tun.c +++ b/drivers/net/tun.c @@@ -2467,10 -2452,10 +2471,11 @@@ build goto out; } - if (!rcu_dereference(tun->steering_prog)) + if (!rcu_dereference(tun->steering_prog) && tun->numqueues > 1 && + !tfile->detached) rxhash = __skb_get_hash_symmetric(skb); + skb_record_rx_queue(skb, tfile->queue_index); netif_receive_skb(skb); stats = get_cpu_ptr(tun->pcpu_stats); diff --cc net/core/dev.c index 5927f6a7c301e,066aa902d85c3..f2bfd2eda7b27 --- a/net/core/dev.c +++ b/net/core/dev.c @@@ -5661,9 -5652,13 +5661,13 @@@ static void napi_reuse_skb(struct napi_ __skb_pull(skb, skb_headlen(skb)); /* restore the reserve we had after netdev_alloc_skb_ip_align() */ skb_reserve(skb, NET_SKB_PAD + NET_IP_ALIGN - skb_headroom(skb)); - skb->vlan_tci = 0; + __vlan_hwaccel_clear_tag(skb); skb->dev = napi->dev; skb->skb_iif = 0; + + /* eth_type_trans() assumes pkt_type is PACKET_HOST */ + skb->pkt_type = PACKET_HOST; + skb->encapsulation = 0; skb_shinfo(skb)->gso_type = 0; skb->truesize = SKB_TRUESIZE(skb_end_offset(skb));