RE: [PATCH net-next v2 1/6] be2net: skip multicast promiscuos setting in already set
flat view
From: Sathya Perla <hidden>
Date: 2014-06-02 04:44:49
-----Original Message----- From: Sergei Shtylyov [mailto:sergei.shtylyov@cogentembedded.com] Hello. On 05/30/2014 05:36 PM, Sathya Perla wrote:quoted
From: Kalesh AP <redacted>quoted
Set mc-promisc (multicast promiscuous) mode on an interface, only if it is *not already* in that mode.quoted
Also removed logs that report interface being set to multicast promiscous mode. In an earlier comment on the netdev list such logmessagesquoted
were deemed unnecessary as this behaviour is common across most of the ethernet drivers.quoted
Signed-off-by: Kalesh AP <redacted> Signed-off-by: Sathya Perla <redacted>[...]quoted
diff --git a/drivers/net/ethernet/emulex/benet/be_main.cb/drivers/net/ethernet/emulex/benet/be_main.cquoted
index e1d445d..9116d5e 100644--- a/drivers/net/ethernet/emulex/benet/be_main.c +++ b/drivers/net/ethernet/emulex/benet/be_main.c[...]quoted
@@ -1244,15 +1242,22 @@ static void be_set_rx_mode(struct net_device*netdev)quoted
} status = be_cmd_rx_filter(adapter, IFF_MULTICAST, ON); - - /* Set to MCAST promisc mode if setting MULTICAST address fails */ - if (status) { - dev_info(&adapter->pdev->dev, - "Exhausted multicast HW filters.\n"); - dev_info(&adapter->pdev->dev, - "Disabling HW multicast filtering.\n"); - be_cmd_rx_filter(adapter, IFF_ALLMULTI, ON); + if (!status) { + if (adapter->flags & BE_FLAGS_MCAST_PROMISC) + adapter->flags &= ~BE_FLAGS_MCAST_PROMISC;Why not just clear it without prior check?
Yes, can be done. But, what is wrong with clearing the flag after the check ?