summaryrefslogtreecommitdiff
path: root/drivers/staging/cw1200/scan.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/cw1200/scan.c')
-rw-r--r--drivers/staging/cw1200/scan.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/staging/cw1200/scan.c b/drivers/staging/cw1200/scan.c
index 11de0db44de..568782eb0c9 100644
--- a/drivers/staging/cw1200/scan.c
+++ b/drivers/staging/cw1200/scan.c
@@ -364,11 +364,13 @@ void cw1200_probe_work(struct work_struct *work)
return;
}
+ mutex_lock(&priv->conf_mutex);
if (unlikely(down_trylock(&priv->scan.lock))) {
/* Scan is already in progress. Requeue self. */
schedule();
queue_delayed_work(priv->workqueue,
&priv->scan.probe_work, HZ / 10);
+ mutex_unlock(&priv->conf_mutex);
return;
}
@@ -403,7 +405,6 @@ void cw1200_probe_work(struct work_struct *work)
}
}
- mutex_lock(&priv->conf_mutex);
/* FW bug: driver has to restart p2p-dev mode after scan */
if (priv->join_status == CW1200_JOIN_STATUS_MONITOR)
cw1200_disable_listening(priv);