net: bridge: when suppression is enabled exclude RARP packets
authorNikolay Aleksandrov <nikolay@nvidia.com>
Mon, 22 Mar 2021 15:45:27 +0000 (17:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 May 2021 08:12:53 +0000 (10:12 +0200)
commit6421cdfbb6fba9c3ac8e62ad8d3697e4a4e74e0d
tree0b7c32855479644d71fae75305d9ed8b70b05520
parentfccb35bbf75f50b00a059b61ed38b2497dc50199
net: bridge: when suppression is enabled exclude RARP packets

[ Upstream commit 0353b4a96b7a9f60fe20d1b3ebd4931a4085f91c ]

Recently we had an interop issue where RARP packets got suppressed with
bridge neigh suppression enabled, but the check in the code was meant to
suppress GARP. Exclude RARP packets from it which would allow some VMWare
setups to work, to quote the report:
"Those RARP packets usually get generated by vMware to notify physical
switches when vMotion occurs. vMware may use random sip/tip or just use
sip=tip=0. So the RARP packet sometimes get properly flooded by the vtep
and other times get dropped by the logic"

Reported-by: Amer Abdalamer <amer@nvidia.com>
Signed-off-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bridge/br_arp_nd_proxy.c