From: Felix Fietkau Date: Wed, 2 Oct 2024 09:56:30 +0000 (+0200) Subject: wifi: mac80211: do not pass a stopped vif to the driver in .get_txpower X-Git-Tag: v6.12-rc6~33^2~24^2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=393b6bc174b0dd21bb2a36c13b36e62fc3474a23;p=thirdparty%2Flinux.git wifi: mac80211: do not pass a stopped vif to the driver in .get_txpower Avoid potentially crashing in the driver because of uninitialized private data Fixes: 5b3dc42b1b0d ("mac80211: add support for driver tx power reporting") Cc: stable@vger.kernel.org Signed-off-by: Felix Fietkau Link: https://patch.msgid.link/20241002095630.22431-1-nbd@nbd.name Signed-off-by: Johannes Berg --- diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index 13294cc20a9ba..6dfc61a9acd4a 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c @@ -3143,7 +3143,8 @@ static int ieee80211_get_tx_power(struct wiphy *wiphy, struct ieee80211_local *local = wiphy_priv(wiphy); struct ieee80211_sub_if_data *sdata = IEEE80211_WDEV_TO_SUB_IF(wdev); - if (local->ops->get_txpower) + if (local->ops->get_txpower && + (sdata->flags & IEEE80211_SDATA_IN_DRIVER)) return drv_get_txpower(local, sdata, dbm); if (local->emulate_chanctx)