net: add dev_uc_sync_multiple() and dev_mc_sync_multiple() api
authorVlad Yasevich <vyasevic@redhat.com>
Mon, 15 Apr 2013 09:54:25 +0000 (09:54 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 15 Apr 2013 20:10:47 +0000 (16:10 -0400)
commit4cd729b04285b7330edaf5a7080aa795d6d15ff3
tree274beba6b944edcd71879b779f2e674dede3cd91
parent0022d2dd4d76e0e7d5c241c343a5016fdfa2ad4f
net: add dev_uc_sync_multiple() and dev_mc_sync_multiple() api

The current implementation of dev_uc_sync/unsync() assumes that there is
a strict 1-to-1 relationship between the source and destination of the sync.
In other words, once an address has been synced to a destination device, it
will not be synced to any other device through the sync API.
However, there are some virtual devices that aggreate a number of lower
devices and need to sync addresses to all of them.  The current
API falls short there.

This patch introduces a new dev_uc_sync_multiple() api that can be called
in the above circumstances and allows sync to work for every invocation.

CC: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: Vlad Yasevich <vyasevic@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h
net/core/dev_addr_lists.c