aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q
diff options
context:
space:
mode:
Diffstat (limited to 'net/8021q')
-rw-r--r--net/8021q/vlan_core.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/8021q/vlan_core.c b/net/8021q/vlan_core.c
index 68df12d3664b..916061f681b6 100644
--- a/net/8021q/vlan_core.c
+++ b/net/8021q/vlan_core.c
@@ -14,6 +14,9 @@ int __vlan_hwaccel_rx(struct sk_buff *skb, struct vlan_group *grp,
14 return NET_RX_DROP; 14 return NET_RX_DROP;
15 } 15 }
16 16
17 skb->vlan_tci = vlan_tci;
18 netif_nit_deliver(skb);
19
17 skb->dev = vlan_group_get_device(grp, vlan_tci & VLAN_VID_MASK); 20 skb->dev = vlan_group_get_device(grp, vlan_tci & VLAN_VID_MASK);
18 if (skb->dev == NULL) { 21 if (skb->dev == NULL) {
19 dev_kfree_skb_any(skb); 22 dev_kfree_skb_any(skb);
@@ -22,6 +25,7 @@ int __vlan_hwaccel_rx(struct sk_buff *skb, struct vlan_group *grp,
22 return NET_RX_SUCCESS; 25 return NET_RX_SUCCESS;
23 } 26 }
24 skb->dev->last_rx = jiffies; 27 skb->dev->last_rx = jiffies;
28 skb->vlan_tci = 0;
25 29
26 stats = &skb->dev->stats; 30 stats = &skb->dev->stats;
27 stats->rx_packets++; 31 stats->rx_packets++;