[PATCH] wifi: nxpwifi: fix return value check in change_vif_to_sta/ap

Jeff Chen <[email protected]>
Newsgroups org.kernel.vger.linux-wireless
Message-ID <[email protected]>
nxpwifi_change_vif_to_sta() and nxpwifi_change_vif_to_ap() both call
nxpwifi_set_bss_mode() without storing the return value, then check
'if (ret)' which tests the stale value from the previous call. The
'if (ret) goto done' is therefore dead code, and errors from
nxpwifi_set_bss_mode() are silently ignored.

Fix this by assigning the return value to ret, so the existing error
path works correctly.

Fixes: 73b01e57ed3e ("wifi: nxp: add nxpwifi driver for IW61x")
Reported-by: Dan Carpenter <[email protected]>
Closes: https://lore.kernel.org/linux-wireless/[email protected]/
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Jeff Chen <[email protected]>
---
 drivers/net/wireless/nxp/nxpwifi/cfg80211.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/net/wireless/nxp/nxpwifi/cfg80211.c b/drivers/net/wireless/nxp/nxpwifi/cfg80211.c
index 5cc8cdf594d3..ee022fa40990 100644
--- a/drivers/net/wireless/nxp/nxpwifi/cfg80211.c
+++ b/drivers/net/wireless/nxp/nxpwifi/cfg80211.c
@@ -844,9 +844,7 @@ nxpwifi_change_vif_to_sta(struct net_device *dev,
 	update_vif_type_counter(adapter, type, 1);
 	dev->ieee80211_ptr->iftype = type;
 
-	if (nxpwifi_set_bss_mode(priv))
-		return -1;
-
+	ret = nxpwifi_set_bss_mode(priv);
 	if (ret)
 		goto done;
 
@@ -888,9 +886,7 @@ nxpwifi_change_vif_to_ap(struct net_device *dev,
 	update_vif_type_counter(adapter, type, 1);
 	dev->ieee80211_ptr->iftype = type;
 
-	if (nxpwifi_set_bss_mode(priv))
-		return -1;
-
+	ret = nxpwifi_set_bss_mode(priv);
 	if (ret)
 		goto done;
 

base-commit: ca800a9302764c445de0da0e84d2252400a770ee
-- 
2.34.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.