Message ID | 20241018151841.3821671-1-arnd@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Johannes Berg |
Headers | show |
Series | iwlwifi: work around -Wenum-compare-conditional warning | expand |
Arnd Bergmann <arnd@kernel.org> writes: > From: Arnd Bergmann <arnd@arndb.de> > > This is one of only three -Wenum-compare-conditional warnings we get > in randconfig builds: > > drivers/net/wireless/intel/iwlwifi/mvm/sta.c:4331:17: error: conditional expression between different enumeration types ('enum iwl_fw_sta_type' and 'enum iwl_sta_type') [-Werror,-Wenum-compare-conditional] > 4331 | u32 type = mld ? STATION_TYPE_PEER : IWL_STA_LINK; > | ^ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~ > > This is a false positive since the code works as intended, but the > warning is otherwise sensible, so slightly rewrite it in order to > not trigger the warning. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Is this and the other rtw89 patch for current release or -next?
On Fri, Oct 18, 2024, at 16:06, Kalle Valo wrote: > Arnd Bergmann <arnd@kernel.org> writes: > >> From: Arnd Bergmann <arnd@arndb.de> >> >> This is one of only three -Wenum-compare-conditional warnings we get >> in randconfig builds: >> >> drivers/net/wireless/intel/iwlwifi/mvm/sta.c:4331:17: error: conditional expression between different enumeration types ('enum iwl_fw_sta_type' and 'enum iwl_sta_type') [-Werror,-Wenum-compare-conditional] >> 4331 | u32 type = mld ? STATION_TYPE_PEER : IWL_STA_LINK; >> | ^ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~ >> >> This is a false positive since the code works as intended, but the >> warning is otherwise sensible, so slightly rewrite it in order to >> not trigger the warning. >> >> Signed-off-by: Arnd Bergmann <arnd@arndb.de> > > Is this and the other rtw89 patch for current release or -next? Up to you, the warning has existed for a long time at W=1 level, so the patch applies to current and stable kernels as well, but it's not a regression or particularly important. It would be nice to turn on the warning by default in 6.13 once the three patches I sent get applied. Arnd
"Arnd Bergmann" <arnd@arndb.de> writes: > On Fri, Oct 18, 2024, at 16:06, Kalle Valo wrote: >> Arnd Bergmann <arnd@kernel.org> writes: >> >>> From: Arnd Bergmann <arnd@arndb.de> >>> >>> This is one of only three -Wenum-compare-conditional warnings we get >>> in randconfig builds: >>> >>> drivers/net/wireless/intel/iwlwifi/mvm/sta.c:4331:17: error: conditional expression between different enumeration types ('enum iwl_fw_sta_type' and 'enum iwl_sta_type') [-Werror,-Wenum-compare-conditional] >>> 4331 | u32 type = mld ? STATION_TYPE_PEER : IWL_STA_LINK; >>> | ^ ~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~ >>> >>> This is a false positive since the code works as intended, but the >>> warning is otherwise sensible, so slightly rewrite it in order to >>> not trigger the warning. >>> >>> Signed-off-by: Arnd Bergmann <arnd@arndb.de> >> >> Is this and the other rtw89 patch for current release or -next? > > Up to you, the warning has existed for a long time at W=1 > level, so the patch applies to current and stable kernels > as well, but it's not a regression or particularly important. Ok, I guess -next is more approriate then. > It would be nice to turn on the warning by default in 6.13 > once the three patches I sent get applied. It's not certain if driver specific trees make it to v6.13 so should the patches applied directly to wireless-next?
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c index b6c99cd6d9e5..9d05c344d967 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c @@ -4328,7 +4328,10 @@ int iwl_mvm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, unsigned int wdg_timeout = iwl_mvm_get_wd_timeout(mvm, vif); bool mld = iwl_mvm_has_mld_api(mvm->fw); - u32 type = mld ? STATION_TYPE_PEER : IWL_STA_LINK; + u32 type = IWL_STA_LINK; + + if (mld) + type = STATION_TYPE_PEER; ret = iwl_mvm_allocate_int_sta(mvm, sta, 0, NL80211_IFTYPE_UNSPECIFIED, type);