ixgbe: fix bcast packets Rx on VF after promisc removal
authorOlivier Matz <olivier.matz@6wind.com>
Wed, 6 Apr 2022 09:52:51 +0000 (11:52 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 7 Jun 2022 17:58:43 +0000 (10:58 -0700)
commit803e9895ea2b0fe80bc85980ae2d7a7e44037914
tree8df20eeaae73fe3c3987a04226e47aba0e51092a
parentcf67838c4422eab826679b076dad99f96152b4de
ixgbe: fix bcast packets Rx on VF after promisc removal

After a VF requested to remove the promiscuous flag on an interface, the
broadcast packets are not received anymore. This breaks some protocols
like ARP.

In ixgbe_update_vf_xcast_mode(), we should keep the IXGBE_VMOLR_BAM
bit (Broadcast Accept) on promiscuous removal.

This flag is already set by default in ixgbe_set_vmolr() on VF reset.

Fixes: 8443c1a4b192 ("ixgbe, ixgbevf: Add new mbox API xcast mode")
Cc: stable@vger.kernel.org
Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Tested-by: Konrad Jankowski <konrad0.jankowski@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c