summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Szycik <marcin.szycik@linux.intel.com>2024-09-24 13:04:24 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-10-17 16:11:56 +0300
commit394ded964ec9cbe8c86e7a5e94c00c678371652a (patch)
tree0de40f1dcb5fc6be49babcff936d4d94d77a8ccc
parentdcd9bf6d4eb24d03d44ed186f8fd2c8a2039cda0 (diff)
downloadlinux-394ded964ec9cbe8c86e7a5e94c00c678371652a.tar.xz
ice: Fix netif_is_ice() in Safe Mode
[ Upstream commit 8e60dbcbaaa177dacef55a61501790e201bf8c88 ] netif_is_ice() works by checking the pointer to netdev ops. However, it only checks for the default ice_netdev_ops, not ice_netdev_safe_mode_ops, so in Safe Mode it always returns false, which is unintuitive. While it doesn't look like netif_is_ice() is currently being called anywhere in Safe Mode, this could change and potentially lead to unexpected behaviour. Fixes: df006dd4b1dc ("ice: Add initial support framework for LAG") Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com> Signed-off-by: Marcin Szycik <marcin.szycik@linux.intel.com> Reviewed-by: Brett Creeley <brett.creeley@amd.com> Tested-by: Sujai Buvaneswaran <sujai.buvaneswaran@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/intel/ice/ice_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
index 3cc344d5228b..329bf24a3f0e 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -55,7 +55,8 @@ static void ice_vsi_release_all(struct ice_pf *pf);
bool netif_is_ice(struct net_device *dev)
{
- return dev && (dev->netdev_ops == &ice_netdev_ops);
+ return dev && (dev->netdev_ops == &ice_netdev_ops ||
+ dev->netdev_ops == &ice_netdev_safe_mode_ops);
}
/**