aboutsummaryrefslogtreecommitdiffstats
path: root/net/8021q/vlan.c
diff options
context:
space:
mode:
authorJohn Fastabend <john.r.fastabend@intel.com>2010-11-24 08:14:50 -0500
committerDavid S. Miller <davem@davemloft.net>2010-11-28 13:47:19 -0500
commit19eb5cc559f716dc98ce03a5bad6030fdc71e897 (patch)
tree52a6ab3702e19b9982144295936b2aeab68fc47b /net/8021q/vlan.c
parent5a0d2268d259886f0c87131639d19eb4a67b4532 (diff)
8021q: vlan device is lockless do not transfer real_num_{tx|rx}_queues
Now that the vlan device is lockless and single queue do not transfer the real num queues. This is causing a BUG_ON to occur. kernel BUG at net/8021q/vlan.c:345! Call Trace: [<ffffffff813fd6e8>] ? fib_rules_event+0x28/0x1b0 [<ffffffff814ad2b5>] notifier_call_chain+0x55/0x80 [<ffffffff81089156>] raw_notifier_call_chain+0x16/0x20 [<ffffffff813e5af7>] call_netdevice_notifiers+0x37/0x70 [<ffffffff813e6756>] netdev_features_change+0x16/0x20 [<ffffffffa02995be>] ixgbe_fcoe_enable+0xae/0x100 [ixgbe] [<ffffffffa01da06a>] vlan_dev_fcoe_enable+0x2a/0x30 [8021q] [<ffffffffa02d08c3>] fcoe_create+0x163/0x630 [fcoe] [<ffffffff811244d5>] ? mmap_region+0x255/0x5a0 [<ffffffff81080ef0>] param_attr_store+0x50/0x80 [<ffffffff810809b6>] module_attr_store+0x26/0x30 [<ffffffff811b9db2>] sysfs_write_file+0xf2/0x180 [<ffffffff8114fc88>] vfs_write+0xc8/0x190 [<ffffffff81150621>] sys_write+0x51/0x90 [<ffffffff8100c0b2>] system_call_fastpath+0x16/0x1b Signed-off-by: John Fastabend <john.r.fastabend@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/8021q/vlan.c')
-rw-r--r--net/8021q/vlan.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index dc1071327d87..6e64f7c6a2e9 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
@@ -341,9 +341,6 @@ static void vlan_transfer_features(struct net_device *dev,
341#if defined(CONFIG_FCOE) || defined(CONFIG_FCOE_MODULE) 341#if defined(CONFIG_FCOE) || defined(CONFIG_FCOE_MODULE)
342 vlandev->fcoe_ddp_xid = dev->fcoe_ddp_xid; 342 vlandev->fcoe_ddp_xid = dev->fcoe_ddp_xid;
343#endif 343#endif
344 vlandev->real_num_tx_queues = dev->real_num_tx_queues;
345 BUG_ON(vlandev->real_num_tx_queues > vlandev->num_tx_queues);
346
347 if (old_features != vlandev->features) 344 if (old_features != vlandev->features)
348 netdev_features_change(vlandev); 345 netdev_features_change(vlandev);
349} 346}