ath11k: fix error routine when fallback of add interface fails
authorKarthikeyan Periyasamy <quic_periyasa@quicinc.com>
Wed, 10 Nov 2021 15:35:57 +0000 (21:05 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 15 Nov 2021 09:15:43 +0000 (11:15 +0200)
commit4ea03443ecdac6920eb7aa3a9da2cd0b8cc6dfc8
tree3db135ae22f51030610ce864ce8b071a3631be63
parent85f36923be47b6990215ad444545a6a85133a0c6
ath11k: fix error routine when fallback of add interface fails

When there is an error in add interface process from
ath11k_mac_set_kickout(), the code attempts to handle a
fallback for add_interface. When this fallback succeeds, the
driver returns zero rather than error code. This leads to
success for the non created VAP. In cleanup, driver gets
remove interface callback for the non created VAP and
proceeds to self peer delete request which leads to FW assert.
Since it was already deleted on the fallback of add interface,
return the actual error code instead of fallback return code.

Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.5.0.1-00729-QCAHKSWPL_SILICONZ-3 v2

Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/1636558557-2874-1-git-send-email-quic_periyasa@quicinc.com
drivers/net/wireless/ath/ath11k/mac.c