summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHagen Paul Pfeifer <hagen@jauu.net>2011-02-25 13:58:54 -0800
committerDavid S. Miller <davem@davemloft.net>2011-02-25 13:58:54 -0800
commit5aca1a9e880e06bb7e5fd553a86a330ae7e218b5 (patch)
tree172cf3642ba7e64883e5ba8df0a4d22a56eb8083
parentc486da34390846b430896a407b47f0cea3a4189c (diff)
downloadlinux-stable-5aca1a9e880e06bb7e5fd553a86a330ae7e218b5.tar.gz
linux-stable-5aca1a9e880e06bb7e5fd553a86a330ae7e218b5.tar.bz2
linux-stable-5aca1a9e880e06bb7e5fd553a86a330ae7e218b5.zip
net: handle addr_type of 0 properly
addr_type of 0 means that the type should be adopted from from_dev and not from __hw_addr_del_multiple(). Unfortunately it isn't so and addr_type will always be considered. Fix this by implementing the considered and documented behavior. Signed-off-by: Hagen Paul Pfeifer <hagen@jauu.net> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/core/dev_addr_lists.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/dev_addr_lists.c b/net/core/dev_addr_lists.c
index 508f9c18992f..133fd22ea287 100644
--- a/net/core/dev_addr_lists.c
+++ b/net/core/dev_addr_lists.c
@@ -144,7 +144,7 @@ void __hw_addr_del_multiple(struct netdev_hw_addr_list *to_list,
list_for_each_entry(ha, &from_list->list, list) {
type = addr_type ? addr_type : ha->type;
- __hw_addr_del(to_list, ha->addr, addr_len, addr_type);
+ __hw_addr_del(to_list, ha->addr, addr_len, type);
}
}
EXPORT_SYMBOL(__hw_addr_del_multiple);