netdev: Do not use TX lock to protect address lists.
Now that we have a specific lock to protect the network device unicast and multicast lists, remove extraneous grabs of the TX lock in cases where the code only needs address list protection. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -593,8 +593,7 @@ static int lbs_add_mcast_addrs(struct cmd_ds_mac_multicast_adr *cmd,
|
||||
if ((dev->flags & (IFF_UP|IFF_MULTICAST)) != (IFF_UP|IFF_MULTICAST))
|
||||
return nr_addrs;
|
||||
|
||||
netif_tx_lock_bh(dev);
|
||||
netif_addr_lock(dev);
|
||||
netif_addr_lock_bh(dev);
|
||||
for (mc_list = dev->mc_list; mc_list; mc_list = mc_list->next) {
|
||||
if (mac_in_list(cmd->maclist, nr_addrs, mc_list->dmi_addr)) {
|
||||
lbs_deb_net("mcast address %s:%s skipped\n", dev->name,
|
||||
@@ -609,8 +608,7 @@ static int lbs_add_mcast_addrs(struct cmd_ds_mac_multicast_adr *cmd,
|
||||
print_mac(mac, mc_list->dmi_addr));
|
||||
i++;
|
||||
}
|
||||
netif_addr_unlock(dev);
|
||||
netif_tx_unlock_bh(dev);
|
||||
netif_addr_unlock_bh(dev);
|
||||
if (mc_list)
|
||||
return -EOVERFLOW;
|
||||
|
||||
|
Reference in New Issue
Block a user