aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q/vlan_dev.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/8021q/vlan_dev.c')
-rw-r--r--net/8021q/vlan_dev.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
index 09bf1c38805b..4deff3ed1da1 100644
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
@@ -558,7 +558,7 @@ static const struct net_device_ops vlan_netdev_ops;
558static int vlan_dev_init(struct net_device *dev) 558static int vlan_dev_init(struct net_device *dev)
559{ 559{
560 struct net_device *real_dev = vlan_dev_priv(dev)->real_dev; 560 struct net_device *real_dev = vlan_dev_priv(dev)->real_dev;
561 int subclass = 0; 561 int subclass = 0, i;
562 562
563 netif_carrier_off(dev); 563 netif_carrier_off(dev);
564 564
@@ -612,6 +612,13 @@ static int vlan_dev_init(struct net_device *dev)
612 if (!vlan_dev_priv(dev)->vlan_pcpu_stats) 612 if (!vlan_dev_priv(dev)->vlan_pcpu_stats)
613 return -ENOMEM; 613 return -ENOMEM;
614 614
615 for_each_possible_cpu(i) {
616 struct vlan_pcpu_stats *vlan_stat;
617 vlan_stat = per_cpu_ptr(vlan_dev_priv(dev)->vlan_pcpu_stats, i);
618 u64_stats_init(&vlan_stat->syncp);
619 }
620
621
615 return 0; 622 return 0;
616} 623}
617 624