mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 19:51:31 -04:00
net: move address list functions to a separate file
+little renaming of unicast functions to be smooth with multicast ones Signed-off-by: Jiri Pirko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
9fc4178b14
commit
a748ee2426
11 changed files with 524 additions and 464 deletions
|
|
@ -356,13 +356,13 @@ static void vlan_sync_address(struct net_device *dev,
|
|||
* the new address */
|
||||
if (compare_ether_addr(vlandev->dev_addr, vlan->real_dev_addr) &&
|
||||
!compare_ether_addr(vlandev->dev_addr, dev->dev_addr))
|
||||
dev_unicast_delete(dev, vlandev->dev_addr);
|
||||
dev_uc_del(dev, vlandev->dev_addr);
|
||||
|
||||
/* vlan address was equal to the old address and is different from
|
||||
* the new address */
|
||||
if (!compare_ether_addr(vlandev->dev_addr, vlan->real_dev_addr) &&
|
||||
compare_ether_addr(vlandev->dev_addr, dev->dev_addr))
|
||||
dev_unicast_add(dev, vlandev->dev_addr);
|
||||
dev_uc_add(dev, vlandev->dev_addr);
|
||||
|
||||
memcpy(vlan->real_dev_addr, dev->dev_addr, ETH_ALEN);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -461,7 +461,7 @@ static int vlan_dev_open(struct net_device *dev)
|
|||
return -ENETDOWN;
|
||||
|
||||
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr)) {
|
||||
err = dev_unicast_add(real_dev, dev->dev_addr);
|
||||
err = dev_uc_add(real_dev, dev->dev_addr);
|
||||
if (err < 0)
|
||||
goto out;
|
||||
}
|
||||
|
|
@ -490,7 +490,7 @@ clear_allmulti:
|
|||
dev_set_allmulti(real_dev, -1);
|
||||
del_unicast:
|
||||
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
|
||||
dev_unicast_delete(real_dev, dev->dev_addr);
|
||||
dev_uc_del(real_dev, dev->dev_addr);
|
||||
out:
|
||||
netif_carrier_off(dev);
|
||||
return err;
|
||||
|
|
@ -505,14 +505,14 @@ static int vlan_dev_stop(struct net_device *dev)
|
|||
vlan_gvrp_request_leave(dev);
|
||||
|
||||
dev_mc_unsync(real_dev, dev);
|
||||
dev_unicast_unsync(real_dev, dev);
|
||||
dev_uc_unsync(real_dev, dev);
|
||||
if (dev->flags & IFF_ALLMULTI)
|
||||
dev_set_allmulti(real_dev, -1);
|
||||
if (dev->flags & IFF_PROMISC)
|
||||
dev_set_promiscuity(real_dev, -1);
|
||||
|
||||
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
|
||||
dev_unicast_delete(real_dev, dev->dev_addr);
|
||||
dev_uc_del(real_dev, dev->dev_addr);
|
||||
|
||||
netif_carrier_off(dev);
|
||||
return 0;
|
||||
|
|
@ -531,13 +531,13 @@ static int vlan_dev_set_mac_address(struct net_device *dev, void *p)
|
|||
goto out;
|
||||
|
||||
if (compare_ether_addr(addr->sa_data, real_dev->dev_addr)) {
|
||||
err = dev_unicast_add(real_dev, addr->sa_data);
|
||||
err = dev_uc_add(real_dev, addr->sa_data);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
|
||||
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
|
||||
dev_unicast_delete(real_dev, dev->dev_addr);
|
||||
dev_uc_del(real_dev, dev->dev_addr);
|
||||
|
||||
out:
|
||||
memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN);
|
||||
|
|
@ -654,7 +654,7 @@ static void vlan_dev_change_rx_flags(struct net_device *dev, int change)
|
|||
static void vlan_dev_set_rx_mode(struct net_device *vlan_dev)
|
||||
{
|
||||
dev_mc_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
|
||||
dev_unicast_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
|
||||
dev_uc_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue