driver: macvlan: Check if need rollback multicast setting in macvlan_open
When dev_set_promiscuity failed in macvlan_open, it always invokes dev_set_allmulti without checking if necessary. Now check the IFF_ALLMULTI flag firstly before rollback the multicast setting in the error handler. Signed-off-by: Gao Feng <fgao@ikuai8.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ffa54a238c
commit
c3891fa254
|
@ -623,7 +623,8 @@ hash_add:
|
|||
return 0;
|
||||
|
||||
clear_multi:
|
||||
dev_set_allmulti(lowerdev, -1);
|
||||
if (dev->flags & IFF_ALLMULTI)
|
||||
dev_set_allmulti(lowerdev, -1);
|
||||
del_unicast:
|
||||
dev_uc_del(lowerdev, dev->dev_addr);
|
||||
out:
|
||||
|
|
Loading…
Reference in New Issue