brcmfmac: fix brcmf_fws_add_interface() for USB devices
authorArend Van Spriel <arend.vanspriel@broadcom.com>
Mon, 12 Jun 2017 11:56:35 +0000 (12:56 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 15 Jun 2017 16:10:11 +0000 (19:10 +0300)
commita2b7a622d6292b693544d7c94bb5d11c3f4676f8
treed311528a2f3d199aabca624de281df6a4cf7b891
parent7a51461fc2da82a6c565a3ee65c41c197f28225d
brcmfmac: fix brcmf_fws_add_interface() for USB devices

USB devices rely on queuing functionality provided by the fwsignal
module regardless the mode fwsignal is operating in. For this some
data structure needs to be reserved which is tied to the interface,
which is done by brcmf_fws_add_interface(). However, it checks the
mode. Replace that by checking result from brcmf_fws_queue_skbs().
Otherwise the driver will crash in a null pointer dereference when
data is transmitted on the interface.

Fixes: fc0471e3e884 ("brcmfmac: ignore interfaces when fwsignal is disabled")
Reviewed-by: Franky Lin <franky.lin@broadcom.com>
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c