From 40262f7f9b0b628b1abe197a5df8cecfa8510d69 Mon Sep 17 00:00:00 2001 From: Padmanabh Ratnakar Date: Thu, 3 Nov 2011 01:49:27 +0000 Subject: [PATCH] --- yaml --- r: 273536 b: refs/heads/master c: 1610c79f1e9545d0a64dc6bb4f9affdfcf1d5726 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/ethernet/emulex/benet/be_cmds.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 791456122039..fa19dc539c6c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 016f97b11b3c7fe834260150d0f9cb36d06b2eb8 +refs/heads/master: 1610c79f1e9545d0a64dc6bb4f9affdfcf1d5726 diff --git a/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c b/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c index bd8332cbf619..03fe7cde2e61 100644 --- a/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c +++ b/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c @@ -1540,6 +1540,13 @@ int be_cmd_rx_filter(struct be_adapter *adapter, u32 flags, u32 value) req->if_flags_mask = req->if_flags = cpu_to_le32(BE_IF_FLAGS_MULTICAST); + + /* Reset mcast promisc mode if already set by setting mask + * and not setting flags field + */ + req->if_flags_mask |= + cpu_to_le32(BE_IF_FLAGS_MCAST_PROMISCUOUS); + req->mcast_num = cpu_to_le32(netdev_mc_count(adapter->netdev)); netdev_for_each_mc_addr(ha, adapter->netdev) memcpy(req->mcast_mac[i++].byte, ha->addr, ETH_ALEN);