Skip to content

Commit a748ee2

Browse files
Jiri Pirkodavem330
authored andcommitted
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]>
1 parent 9fc4178 commit a748ee2

File tree

11 files changed

+524
-464
lines changed

11 files changed

+524
-464
lines changed

drivers/net/bonding/bond_main.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1491,7 +1491,7 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev)
14911491
}
14921492

14931493
/* Flush unicast and multicast addresses */
1494-
dev_unicast_flush(bond_dev);
1494+
dev_uc_flush(bond_dev);
14951495
dev_addr_discard(bond_dev);
14961496

14971497
if (slave_dev->type != ARPHRD_ETHER)

drivers/net/macvlan.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@ static int macvlan_open(struct net_device *dev)
282282
if (macvlan_addr_busy(vlan->port, dev->dev_addr))
283283
goto out;
284284

285-
err = dev_unicast_add(lowerdev, dev->dev_addr);
285+
err = dev_uc_add(lowerdev, dev->dev_addr);
286286
if (err < 0)
287287
goto out;
288288
if (dev->flags & IFF_ALLMULTI) {
@@ -294,7 +294,7 @@ static int macvlan_open(struct net_device *dev)
294294
return 0;
295295

296296
del_unicast:
297-
dev_unicast_delete(lowerdev, dev->dev_addr);
297+
dev_uc_del(lowerdev, dev->dev_addr);
298298
out:
299299
return err;
300300
}
@@ -308,7 +308,7 @@ static int macvlan_stop(struct net_device *dev)
308308
if (dev->flags & IFF_ALLMULTI)
309309
dev_set_allmulti(lowerdev, -1);
310310

311-
dev_unicast_delete(lowerdev, dev->dev_addr);
311+
dev_uc_del(lowerdev, dev->dev_addr);
312312

313313
macvlan_hash_del(vlan);
314314
return 0;
@@ -332,11 +332,11 @@ static int macvlan_set_mac_address(struct net_device *dev, void *p)
332332
if (macvlan_addr_busy(vlan->port, addr->sa_data))
333333
return -EBUSY;
334334

335-
err = dev_unicast_add(lowerdev, addr->sa_data);
335+
err = dev_uc_add(lowerdev, addr->sa_data);
336336
if (err)
337337
return err;
338338

339-
dev_unicast_delete(lowerdev, dev->dev_addr);
339+
dev_uc_del(lowerdev, dev->dev_addr);
340340

341341
macvlan_hash_change_addr(vlan, addr->sa_data);
342342
}

drivers/scsi/fcoe/fcoe.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -308,9 +308,9 @@ static int fcoe_interface_setup(struct fcoe_interface *fcoe,
308308
* for multiple unicast MACs.
309309
*/
310310
memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN);
311-
dev_unicast_add(netdev, flogi_maddr);
311+
dev_uc_add(netdev, flogi_maddr);
312312
if (fip->spma)
313-
dev_unicast_add(netdev, fip->ctl_src_addr);
313+
dev_uc_add(netdev, fip->ctl_src_addr);
314314
dev_mc_add(netdev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0);
315315

316316
/*
@@ -394,9 +394,9 @@ void fcoe_interface_cleanup(struct fcoe_interface *fcoe)
394394

395395
/* Delete secondary MAC addresses */
396396
memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN);
397-
dev_unicast_delete(netdev, flogi_maddr);
397+
dev_uc_del(netdev, flogi_maddr);
398398
if (fip->spma)
399-
dev_unicast_delete(netdev, fip->ctl_src_addr);
399+
dev_uc_del(netdev, fip->ctl_src_addr);
400400
dev_mc_delete(netdev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0);
401401

402402
/* Tell the LLD we are done w/ FCoE */
@@ -490,9 +490,9 @@ static void fcoe_update_src_mac(struct fc_lport *lport, u8 *addr)
490490

491491
rtnl_lock();
492492
if (!is_zero_ether_addr(port->data_src_addr))
493-
dev_unicast_delete(fcoe->netdev, port->data_src_addr);
493+
dev_uc_del(fcoe->netdev, port->data_src_addr);
494494
if (!is_zero_ether_addr(addr))
495-
dev_unicast_add(fcoe->netdev, addr);
495+
dev_uc_add(fcoe->netdev, addr);
496496
memcpy(port->data_src_addr, addr, ETH_ALEN);
497497
rtnl_unlock();
498498
}
@@ -819,7 +819,7 @@ static void fcoe_if_destroy(struct fc_lport *lport)
819819

820820
rtnl_lock();
821821
if (!is_zero_ether_addr(port->data_src_addr))
822-
dev_unicast_delete(netdev, port->data_src_addr);
822+
dev_uc_del(netdev, port->data_src_addr);
823823
rtnl_unlock();
824824

825825
/* receives may not be stopped until after this */

include/linux/netdevice.h

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1991,15 +1991,20 @@ extern int dev_addr_add_multiple(struct net_device *to_dev,
19911991
extern int dev_addr_del_multiple(struct net_device *to_dev,
19921992
struct net_device *from_dev,
19931993
unsigned char addr_type);
1994+
extern void dev_addr_flush(struct net_device *dev);
1995+
extern int dev_addr_init(struct net_device *dev);
1996+
1997+
/* Functions used for unicast addresses handling */
1998+
extern int dev_uc_add(struct net_device *dev, unsigned char *addr);
1999+
extern int dev_uc_del(struct net_device *dev, unsigned char *addr);
2000+
extern int dev_uc_sync(struct net_device *to, struct net_device *from);
2001+
extern void dev_uc_unsync(struct net_device *to, struct net_device *from);
2002+
extern void dev_uc_flush(struct net_device *dev);
2003+
extern void dev_uc_init(struct net_device *dev);
19942004

19952005
/* Functions used for secondary unicast and multicast support */
19962006
extern void dev_set_rx_mode(struct net_device *dev);
19972007
extern void __dev_set_rx_mode(struct net_device *dev);
1998-
extern int dev_unicast_delete(struct net_device *dev, void *addr);
1999-
extern int dev_unicast_add(struct net_device *dev, void *addr);
2000-
extern int dev_unicast_sync(struct net_device *to, struct net_device *from);
2001-
extern void dev_unicast_unsync(struct net_device *to, struct net_device *from);
2002-
extern void dev_unicast_flush(struct net_device *dev);
20032008
extern int dev_mc_delete(struct net_device *dev, void *addr, int alen, int all);
20042009
extern int dev_mc_add(struct net_device *dev, void *addr, int alen, int newonly);
20052010
extern int dev_mc_sync(struct net_device *to, struct net_device *from);

net/8021q/vlan.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -356,13 +356,13 @@ static void vlan_sync_address(struct net_device *dev,
356356
* the new address */
357357
if (compare_ether_addr(vlandev->dev_addr, vlan->real_dev_addr) &&
358358
!compare_ether_addr(vlandev->dev_addr, dev->dev_addr))
359-
dev_unicast_delete(dev, vlandev->dev_addr);
359+
dev_uc_del(dev, vlandev->dev_addr);
360360

361361
/* vlan address was equal to the old address and is different from
362362
* the new address */
363363
if (!compare_ether_addr(vlandev->dev_addr, vlan->real_dev_addr) &&
364364
compare_ether_addr(vlandev->dev_addr, dev->dev_addr))
365-
dev_unicast_add(dev, vlandev->dev_addr);
365+
dev_uc_add(dev, vlandev->dev_addr);
366366

367367
memcpy(vlan->real_dev_addr, dev->dev_addr, ETH_ALEN);
368368
}

net/8021q/vlan_dev.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,7 @@ static int vlan_dev_open(struct net_device *dev)
461461
return -ENETDOWN;
462462

463463
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr)) {
464-
err = dev_unicast_add(real_dev, dev->dev_addr);
464+
err = dev_uc_add(real_dev, dev->dev_addr);
465465
if (err < 0)
466466
goto out;
467467
}
@@ -490,7 +490,7 @@ static int vlan_dev_open(struct net_device *dev)
490490
dev_set_allmulti(real_dev, -1);
491491
del_unicast:
492492
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
493-
dev_unicast_delete(real_dev, dev->dev_addr);
493+
dev_uc_del(real_dev, dev->dev_addr);
494494
out:
495495
netif_carrier_off(dev);
496496
return err;
@@ -505,14 +505,14 @@ static int vlan_dev_stop(struct net_device *dev)
505505
vlan_gvrp_request_leave(dev);
506506

507507
dev_mc_unsync(real_dev, dev);
508-
dev_unicast_unsync(real_dev, dev);
508+
dev_uc_unsync(real_dev, dev);
509509
if (dev->flags & IFF_ALLMULTI)
510510
dev_set_allmulti(real_dev, -1);
511511
if (dev->flags & IFF_PROMISC)
512512
dev_set_promiscuity(real_dev, -1);
513513

514514
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
515-
dev_unicast_delete(real_dev, dev->dev_addr);
515+
dev_uc_del(real_dev, dev->dev_addr);
516516

517517
netif_carrier_off(dev);
518518
return 0;
@@ -531,13 +531,13 @@ static int vlan_dev_set_mac_address(struct net_device *dev, void *p)
531531
goto out;
532532

533533
if (compare_ether_addr(addr->sa_data, real_dev->dev_addr)) {
534-
err = dev_unicast_add(real_dev, addr->sa_data);
534+
err = dev_uc_add(real_dev, addr->sa_data);
535535
if (err < 0)
536536
return err;
537537
}
538538

539539
if (compare_ether_addr(dev->dev_addr, real_dev->dev_addr))
540-
dev_unicast_delete(real_dev, dev->dev_addr);
540+
dev_uc_del(real_dev, dev->dev_addr);
541541

542542
out:
543543
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)
654654
static void vlan_dev_set_rx_mode(struct net_device *vlan_dev)
655655
{
656656
dev_mc_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
657-
dev_unicast_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
657+
dev_uc_sync(vlan_dev_info(vlan_dev)->real_dev, vlan_dev);
658658
}
659659

660660
/*

net/core/Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ obj-y := sock.o request_sock.o skbuff.o iovec.o datagram.o stream.o scm.o \
88
obj-$(CONFIG_SYSCTL) += sysctl_net_core.o
99

1010
obj-y += dev.o ethtool.o dev_mcast.o dst.o netevent.o \
11-
neighbour.o rtnetlink.o utils.o link_watch.o filter.o
11+
neighbour.o rtnetlink.o utils.o link_watch.o filter.o \
12+
dev_addr_lists.o
1213

1314
obj-$(CONFIG_XFRM) += flow.o
1415
obj-y += net-sysfs.o

0 commit comments

Comments
 (0)