[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1520601923-26931-1-git-send-email-mgamal@redhat.com>
Date: Fri, 9 Mar 2018 14:25:23 +0100
From: Mohammed Gamal <mgamal@...hat.com>
To: netdev@...r.kernel.org
Cc: devel@...uxdriverproject.org, linux-kernel@...r.kernel.org,
sthemmin@...rosoft.com, davem@...emloft.net, vkuznets@...hat.com,
otubo@...hat.com, Mohammed Gamal <mgamal@...hat.com>
Subject: [PATCH net-next] hv_netvsc: Correct filter setting for multicast/broadcast
Commit 009f766 intended to filter multicast/broadcast, however
the NDIS filter wasn't set properly in non-promiscuous modes,
which resulted in issues like DHCP timeouts.
This patch sets the filter flags correctly.
Fixes: 009f766 ("hv_netvsc: filter multicast/broadcast")
Signed-off-by: Mohammed Gamal <mgamal@...hat.com>
---
drivers/net/hyperv/rndis_filter.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 8927c48..411a3ae 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -861,9 +861,9 @@ static void rndis_set_multicast(struct work_struct *w)
filter = NDIS_PACKET_TYPE_PROMISCUOUS;
} else {
if (flags & IFF_ALLMULTI)
- flags |= NDIS_PACKET_TYPE_ALL_MULTICAST;
+ filter |= NDIS_PACKET_TYPE_ALL_MULTICAST;
if (flags & IFF_BROADCAST)
- flags |= NDIS_PACKET_TYPE_BROADCAST;
+ filter |= NDIS_PACKET_TYPE_BROADCAST;
}
rndis_filter_set_packet_filter(rdev, filter);
--
1.8.3.1
Powered by blists - more mailing lists