vlan: multiqueue vlan device
vlan devices are currently not multi-queue capable. We can do that with a new rtnl_link_ops method, get_tx_queues(), called from rtnl_create_link() This new method gets num_tx_queues/real_num_tx_queues from real device. register_vlan_device() is also handled. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Esse commit está contido em:
@@ -330,12 +330,13 @@ static int register_vlan_device(struct net_device *real_dev, u16 vlan_id)
|
||||
snprintf(name, IFNAMSIZ, "vlan%.4i", vlan_id);
|
||||
}
|
||||
|
||||
new_dev = alloc_netdev(sizeof(struct vlan_dev_info), name,
|
||||
vlan_setup);
|
||||
new_dev = alloc_netdev_mq(sizeof(struct vlan_dev_info), name,
|
||||
vlan_setup, real_dev->num_tx_queues);
|
||||
|
||||
if (new_dev == NULL)
|
||||
return -ENOBUFS;
|
||||
|
||||
new_dev->real_num_tx_queues = real_dev->real_num_tx_queues;
|
||||
dev_net_set(new_dev, net);
|
||||
/* need 4 bytes for extra VLAN header info,
|
||||
* hope the underlying device can handle it.
|
||||
|
Referência em uma nova issue
Block a user