On 21/01/2026 12:39, Ben Hutchings wrote:
> The deadlock seems to be quite straightforward:
>
> 1. In net/ethtool/rss.c, rss_prepare_get() locks the net device's
> rss_lock and calls its driver's get_rxfh operation
> 2. In drivers/net/ethernet/sfc/ethtool_common.c, efx_ethtool_get_rxfh()
> calls the chip's rx_pull_rss_config operation
> 3. In drivers/net/ethernet/sfc/mcdi_filters.c,
> efx_mcdi_rx_pull_rss_config() locks the net device's rss_lock
>
> Step 3 seems to be a workaround for missing locking in the ethtool core.
> Since that locking was added to the ethtool core in 6.17, it needs to be
> removed from the sfc driver from that version onward.
Analysis looks correct to me. I think the appropriate Fixes tag is
040cef30b5e6 ("net: ethtool: move get_rxfh callback under the rss_lock")
Unless you want to do it, I'll post a patch with Damir's Reported-by:
and your Suggested-by:.
-ed