diff options
author | Jiri Pirko <jpirko@redhat.com> | 2010-04-01 17:22:57 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-03 17:22:15 -0400 |
commit | 22bedad3ce112d5ca1eaf043d4990fa2ed698c87 (patch) | |
tree | b6fba5688d48b1396f01d13ee53610dea7749c15 /drivers/net/ibmveth.c | |
parent | a748ee2426817a95b1f03012d8f339c45c722ae1 (diff) |
net: convert multicast list to list_head
Converts the list and the core manipulating with it to be the same as uc_list.
+uses two functions for adding/removing mc address (normal and "global"
variant) instead of a function parameter.
+removes dev_mcast.c completely.
+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for
manipulation with lists on a sandbox (used in bonding and 80211 drivers)
Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ibmveth.c')
-rw-r--r-- | drivers/net/ibmveth.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c index 0bc777bac9b4..f468590ed454 100644 --- a/drivers/net/ibmveth.c +++ b/drivers/net/ibmveth.c | |||
@@ -1072,7 +1072,7 @@ static void ibmveth_set_multicast_list(struct net_device *netdev) | |||
1072 | ibmveth_error_printk("h_multicast_ctrl rc=%ld when entering promisc mode\n", lpar_rc); | 1072 | ibmveth_error_printk("h_multicast_ctrl rc=%ld when entering promisc mode\n", lpar_rc); |
1073 | } | 1073 | } |
1074 | } else { | 1074 | } else { |
1075 | struct dev_mc_list *mclist; | 1075 | struct netdev_hw_addr *ha; |
1076 | /* clear the filter table & disable filtering */ | 1076 | /* clear the filter table & disable filtering */ |
1077 | lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, | 1077 | lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, |
1078 | IbmVethMcastEnableRecv | | 1078 | IbmVethMcastEnableRecv | |
@@ -1083,10 +1083,10 @@ static void ibmveth_set_multicast_list(struct net_device *netdev) | |||
1083 | ibmveth_error_printk("h_multicast_ctrl rc=%ld when attempting to clear filter table\n", lpar_rc); | 1083 | ibmveth_error_printk("h_multicast_ctrl rc=%ld when attempting to clear filter table\n", lpar_rc); |
1084 | } | 1084 | } |
1085 | /* add the addresses to the filter table */ | 1085 | /* add the addresses to the filter table */ |
1086 | netdev_for_each_mc_addr(mclist, netdev) { | 1086 | netdev_for_each_mc_addr(ha, netdev) { |
1087 | // add the multicast address to the filter table | 1087 | // add the multicast address to the filter table |
1088 | unsigned long mcast_addr = 0; | 1088 | unsigned long mcast_addr = 0; |
1089 | memcpy(((char *)&mcast_addr)+2, mclist->dmi_addr, 6); | 1089 | memcpy(((char *)&mcast_addr)+2, ha->addr, 6); |
1090 | lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, | 1090 | lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, |
1091 | IbmVethMcastAddFilter, | 1091 | IbmVethMcastAddFilter, |
1092 | mcast_addr); | 1092 | mcast_addr); |