lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241018151841.3821671-1-arnd@kernel.org>
Date: Fri, 18 Oct 2024 15:18:34 +0000
From: Arnd Bergmann <arnd@...nel.org>
To: Miri Korenblit <miriam.rachel.korenblit@...el.com>,
	Kalle Valo <kvalo@...nel.org>
Cc: Arnd Bergmann <arnd@...db.de>,
	Johannes Berg <johannes.berg@...el.com>,
	Emmanuel Grumbach <emmanuel.grumbach@...el.com>,
	Gregory Greenman <gregory.greenman@...el.com>,
	Daniel Gabay <daniel.gabay@...el.com>,
	Benjamin Berg <benjamin.berg@...el.com>,
	Ilan Peer <ilan.peer@...el.com>,
	linux-wireless@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: [PATCH] iwlwifi: work around -Wenum-compare-conditional warning

From: Arnd Bergmann <arnd@...db.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@...db.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


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ