brcmfmac: Handle status == BRCMF_E_STATUS_ABORT in cfg80211_escan_handler
authorHans de Goede <hdegoede@redhat.com>
Wed, 8 Mar 2017 13:50:17 +0000 (14:50 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 20 Mar 2017 17:14:17 +0000 (19:14 +0200)
commitb9472a2e3e452c414634b3ccb1ef6c4098878686
treec3921a647a4ae1223e333a2ec552cb0a0d6e7ebc
parent26e537884a8ef451f5c60f6949b1615069931ffa
brcmfmac: Handle status == BRCMF_E_STATUS_ABORT in cfg80211_escan_handler

If a scan gets aborted BRCMF_SCAN_STATUS_BUSY gets cleared in
cfg->scan_status and when we receive an abort event from the firmware
the BRCMF_SCAN_STATUS_BUSY check in the cfg80211_escan_handler will
trigger resulting in multiple errors getting logged.

Check for a status of BRCMF_E_STATUS_ABORT and in this case simply
cleanly exit the cfg80211_escan_handler. This also avoids a
BRCMF_E_STATUS_ABORT event arriving after a new scan has been started
causing the new scan to complete prematurely without any data.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c