In __dev_open(), it already calls dev_set_rx_mode().
and dev_set_rx_mode() has no effect for a net device which does not have
IFF_UP flag set.
So the call of dev_set_rx_mode() is duplicate in __dev_change_flags().
Signed-off-by: Weiping Pan <redacted>
---
net/core/dev.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 30eedf6..002678f 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5434,9 +5434,6 @@ int __dev_change_flags(struct net_device *dev, unsigned int flags)
ret = 0;
if ((old_flags ^ flags) & IFF_UP) { /* Bit is different ? */
ret = ((old_flags & IFF_UP) ? __dev_close : __dev_open)(dev);
-
- if (!ret)
- dev_set_rx_mode(dev);
}
if ((flags ^ dev->gflags) & IFF_PROMISC) {--
1.9.0