]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
sfc: fix deadlock in RSS config read
authorEdward Cree <ecree.xilinx@gmail.com>
Fri, 23 Jan 2026 16:16:34 +0000 (16:16 +0000)
committerJakub Kicinski <kuba@kernel.org>
Sun, 25 Jan 2026 21:02:21 +0000 (13:02 -0800)
Since cited commit, core locks the net_device's rss_lock when handling
 ethtool -x command, so driver's implementation should not lock it
 again.  Remove the latter.

Fixes: 040cef30b5e6 ("net: ethtool: move get_rxfh callback under the rss_lock")
Reported-by: Damir Mansurov <damir.mansurov@oktetlabs.ru>
Closes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1126015
Suggested-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Edward Cree <ecree.xilinx@gmail.com>
Link: https://patch.msgid.link/20260123161634.1215006-1-edward.cree@amd.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/sfc/mcdi_filters.c

index 6ef96292909a2f08e454ff3f8492d042652eef74..3db589b90b68ad093cb3ae4949875c393be0c79b 100644 (file)
@@ -2182,12 +2182,7 @@ int efx_mcdi_rx_pull_rss_context_config(struct efx_nic *efx,
 
 int efx_mcdi_rx_pull_rss_config(struct efx_nic *efx)
 {
-       int rc;
-
-       mutex_lock(&efx->net_dev->ethtool->rss_lock);
-       rc = efx_mcdi_rx_pull_rss_context_config(efx, &efx->rss_context);
-       mutex_unlock(&efx->net_dev->ethtool->rss_lock);
-       return rc;
+       return efx_mcdi_rx_pull_rss_context_config(efx, &efx->rss_context);
 }
 
 void efx_mcdi_rx_restore_rss_contexts(struct efx_nic *efx)