summaryrefslogtreecommitdiff
path: root/net/bridge
diff options
context:
space:
mode:
authorwangweidong <wangweidong1@huawei.com>2014-05-29 02:15:30 (GMT)
committerDavid S. Miller <davem@davemloft.net>2014-06-02 05:05:16 (GMT)
commit019ee792d7861fde33e6c2331a8b32a2b975e865 (patch)
tree9c8fe92378c2bd49589169af10bb7b92826582eb /net/bridge
parentee39facbf82e73e468c504d2b40e83e2d223c28c (diff)
downloadlinux-019ee792d7861fde33e6c2331a8b32a2b975e865.tar.xz
bridge: fix the unbalanced promiscuous count when add_if failed
As commit 2796d0c648c94 ("bridge: Automatically manage port promiscuous mode."), make the add_if use dev_set_allmulti instead of dev_set_promiscuous, so when add_if failed, we should do dev_set_allmulti(dev, -1). Signed-off-by: Wang Weidong <wangweidong1@huawei.com> Reviewed-by: Amos Kong <akong@redhat.com> Acked-by: Vlad Yasevich <vyasevic@redhat.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge')
-rw-r--r--net/bridge/br_if.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c
index 104a811..a08d2b8 100644
--- a/net/bridge/br_if.c
+++ b/net/bridge/br_if.c
@@ -528,7 +528,7 @@ err2:
kobject_put(&p->kobj);
p = NULL; /* kobject_put frees */
err1:
- dev_set_promiscuity(dev, -1);
+ dev_set_allmulti(dev, -1);
put_back:
dev_put(dev);
kfree(p);