summaryrefslogtreecommitdiff
path: root/drivers/staging/wfx/wfx.h
diff options
context:
space:
mode:
authorJérôme Pouiller <jerome.pouiller@silabs.com>2020-05-15 10:33:19 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-05-15 16:00:53 +0200
commitf214b7b6e7c959b4306df8e5c687887c547e38b6 (patch)
tree01a5c2b77d564532e70b900877290a31bf6eed7d /drivers/staging/wfx/wfx.h
parentb3a71adf4d580b6382944e2c2ead392ba65e5243 (diff)
staging: wfx: fix potential dead lock between join and scan
The device disallows to start a scan request between hif_join() and hif_set_bss_params(). The driver is not protected against that. The worst case happens when association is aborted and hif_set_bss_params() never happens. mac80211 would never ask for scan during the association process. So, this patch just aborts the association in progress when scan is requested. Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com> Link: https://lore.kernel.org/r/20200515083325.378539-14-Jerome.Pouiller@silabs.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wfx/wfx.h')
-rw-r--r--drivers/staging/wfx/wfx.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/staging/wfx/wfx.h b/drivers/staging/wfx/wfx.h
index 09a24561f092..cc9f7d16ee8b 100644
--- a/drivers/staging/wfx/wfx.h
+++ b/drivers/staging/wfx/wfx.h
@@ -69,6 +69,8 @@ struct wfx_vif {
u32 link_id_map;
bool after_dtim_tx_allowed;
+ bool join_in_progress;
+
struct delayed_work beacon_loss_work;
struct tx_policy_cache tx_policy_cache;