Browse Source

net/ibm/emac: add mutex to 'set multicast list'

for preventing race conditions within ioctl calls.

Signed-off-by: Ivan Mikhaylov <ivan@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ivan Mikhaylov 9 years ago
parent
commit
7106a069f4
1 changed files with 3 additions and 0 deletions
  1. 3 0
      drivers/net/ethernet/ibm/emac/core.c

+ 3 - 0
drivers/net/ethernet/ibm/emac/core.c

@@ -977,7 +977,10 @@ static void emac_set_multicast_list(struct net_device *ndev)
 		dev->mcast_pending = 1;
 		return;
 	}
+
+	mutex_lock(&dev->link_lock);
 	__emac_set_multicast_list(dev);
+	mutex_unlock(&dev->link_lock);
 }
 
 static int emac_set_mac_address(struct net_device *ndev, void *sa)