linux/drivers/net/wireless/brcm80211/brcmfmac
Hante Meuleman d375bc8a85 brcmfmac: Fix race condition in msgbuf ioctl processing.
Msgbuf is using a wait_event_timeout to wait for the response on
an ioctl. The wakeup routine uses waitqueue_active to see if
wait_event_timeout has been called. There is a chance that the
response arrives before wait_event_timeout is called, this
will result in situation that wait_event_timeout never gets
woken again and assumed result will be a timeout. This patch
removes that errornous situation by always setting the
ctl_completed var before checking for queue active.

Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
Signed-off-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2015-03-13 15:16:36 +02:00
..
bcdc.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
bcdc.h brcmfmac: conditionally compile firmware protocol source code 2014-09-15 15:09:26 -04:00
bcmsdh.c brcmfmac: Fix oops when SDIO device is removed. 2015-03-13 15:16:30 +02:00
btcoex.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
btcoex.h
bus.h brcmfmac: Reopen netdev queue on bus state data. 2015-01-29 09:59:05 +02:00
cfg80211.c Major changes: 2015-03-06 15:46:08 -05:00
cfg80211.h brcmfmac: enable 802.11d support in firmware 2015-01-06 20:30:16 +02:00
chip.c brcmfmac: Add support for bcm43340/1 wireless chipsets 2015-01-06 21:06:42 +02:00
chip.h brcmfmac: make chip related functions host interface independent 2014-02-12 15:35:45 -05:00
common.c brcmfmac: store revinfo retrieval result 2015-01-29 09:59:17 +02:00
common.h brcmfmac: signal completion of 802.1x. 2015-01-06 20:29:57 +02:00
commonring.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
commonring.h brcmfmac: Relax scheduling of msgbuf worker on high throughput. 2015-01-29 09:58:49 +02:00
core.c brcmfmac: add debugfs file containing revision info 2015-02-26 15:14:18 +02:00
core.h brcmfmac: store revinfo retrieval result 2015-01-29 09:59:17 +02:00
debug.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
debug.h brcmfmac: (clean) Rename files dhd_dbg to debug 2014-10-30 15:26:44 -04:00
feature.c brcmfmac: add multiple BSS support. 2014-12-04 11:35:03 -05:00
feature.h brcmfmac: add multiple BSS support. 2014-12-04 11:35:03 -05:00
firmware.c brcmfmac: fix nvram processing 2015-01-29 10:00:19 +02:00
firmware.h brcmfmac: Make firmware path a module parameter 2014-07-15 16:00:12 -04:00
flowring.c wireless: Use eth_<foo>_addr instead of memset 2015-03-03 17:01:36 -05:00
flowring.h brcmfmac: Add TDLS support to msgbuf. 2014-07-31 13:45:29 -04:00
fweh.c brcmfmac: add multiple BSS support. 2014-12-04 11:35:03 -05:00
fweh.h brcmfmac: handle IF event for P2P_DEVICE interface 2014-09-15 15:09:26 -04:00
fwil_types.h brcmfmac: determine chip info when not provided by bus layer 2015-01-29 09:59:11 +02:00
fwil.c brcmfmac: SDIO: avoid using bus state for private states. 2015-01-29 09:59:03 +02:00
fwil.h brcmfmac: determine chip info when not provided by bus layer 2015-01-29 09:59:11 +02:00
fwsignal.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
fwsignal.h
Makefile brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
msgbuf.c brcmfmac: Fix race condition in msgbuf ioctl processing. 2015-03-13 15:16:36 +02:00
msgbuf.h brcmfmac: conditionally compile firmware protocol source code 2014-09-15 15:09:26 -04:00
of.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2014-12-08 13:58:58 -05:00
of.h brcmfmac: add device tree support for SDIO devices 2014-07-29 10:32:56 -04:00
p2p.c wireless: Use eth_<foo>_addr instead of memset 2015-03-03 17:01:36 -05:00
p2p.h
pcie.c brcmfmac: SDIO: avoid using bus state for private states. 2015-01-29 09:59:03 +02:00
pcie.h brcmfmac: Adding PCIe bus layer support. 2014-07-31 13:45:26 -04:00
proto.c brcmfmac: (clean) Rename sdio related files. 2014-10-30 15:26:48 -04:00
proto.h brcmfmac: Add TDLS support to msgbuf. 2014-07-31 13:45:29 -04:00
sdio.c brcmfmac: Fix possible race-condition. 2015-03-13 15:16:34 +02:00
sdio.h brcmfmac: make sdio suspend wait for threads to freeze 2015-02-26 15:14:19 +02:00
tracepoint.c brcmfmac: (clean) Move tracepoint related function. 2014-10-30 15:26:38 -04:00
tracepoint.h brcmfmac: Use consistent naming for BCDC. 2013-12-02 14:25:25 -05:00
usb.c brcm80211: Delete unnecessary checks before two function calls 2015-02-06 08:52:50 +02:00
usb.h
vendor.c brcmfmac: Fix vendor cmds used interface. 2014-12-04 11:35:03 -05:00
vendor.h brcmfmac: replace cfg80211 testmode with vendor command 2014-06-25 15:32:48 -04:00