drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
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>
---
I also tried a more complex approach of splitting the function into
two separate ones, since the 'mld' behavior is already quite different
from the other path. The version I post here ended up looking simpler
to me, but I can also send the other one if the maintainers prefer.
---
drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
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);
--
2.39.5
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? -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
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? -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
© 2016 - 2024 Red Hat, Inc.