It doesn't need to wait until no commands are pending anyway -- it only
needs to wait until the scan is finished.
We can hopefully find it something else to wait on too -- it's the only
user of the cmd_pending waitqueue.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
 
        lbs_scan_networks(priv, scan_cfg, 1);
        wait_event_interruptible(priv->cmd_pending,
-                                priv->surpriseremoved || 
-                                (!priv->cur_cmd && list_empty(&priv->cmdpendingq)));
+                                priv->surpriseremoved || !priv->last_scanned_channel);
 
        if (priv->surpriseremoved)
                goto out_scan_cfg;