aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/ice/ice_main.c
diff options
context:
space:
mode:
authorWojciech Drewek <[email protected]>2023-07-12 11:03:27 +0000
committerTony Nguyen <[email protected]>2023-07-24 15:52:34 +0000
commit2571a3fa6251662e5201372f889bf93f234c8261 (patch)
tree5d903eace198295bf3f3d0a70a73aa10f1987230 /drivers/net/ethernet/intel/ice/ice_main.c
parentice: Skip adv rules removal upon switchdev release (diff)
downloadkernel-2571a3fa6251662e5201372f889bf93f234c8261.tar.gz
kernel-2571a3fa6251662e5201372f889bf93f234c8261.zip
ice: Prohibit rx mode change in switchdev mode
Don't allow to change promisc mode in switchdev mode. When switchdev is configured, PF netdev is set to be a default VSI. This is needed for the slow-path to work correctly. All the unmatched packets will be directed to PF netdev. It is possible that this setting might be overwritten by ndo_set_rx_mode. Prevent this by checking if switchdev is enabled in ice_set_rx_mode. Reviewed-by: Paul Menzel <[email protected]> Reviewed-by: Simon Horman <[email protected]> Signed-off-by: Wojciech Drewek <[email protected]> Tested-by: Sujai Buvaneswaran <[email protected]> Signed-off-by: Tony Nguyen <[email protected]>
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_main.c')
-rw-r--r--drivers/net/ethernet/intel/ice/ice_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
index 4f70f5553c80..d1f2077676e4 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -5704,7 +5704,7 @@ static void ice_set_rx_mode(struct net_device *netdev)
struct ice_netdev_priv *np = netdev_priv(netdev);
struct ice_vsi *vsi = np->vsi;
- if (!vsi)
+ if (!vsi || ice_is_switchdev_running(vsi->back))
return;
/* Set the flags to synchronize filters