[PATCH] libertas: send SIOCGIWSCAN event after partial scans too
authorDan Williams <dcbw@redhat.com>
Sat, 26 May 2007 02:38:41 +0000 (22:38 -0400)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 11 Jun 2007 18:28:44 +0000 (14:28 -0400)
Any time the driver gets new scan results, even from partial scans,
it should send the scan event to userspace.

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/libertas/scan.c

index 83b1612e84bf141f13eefebe93c0971490ee4385..ec16cd08aead10c58f5e81d6fe167579e744f1d1 100644 (file)
@@ -707,19 +707,19 @@ static int wlan_scan_channel_list(wlan_private * priv,
                ret = libertas_prepare_and_send_command(priv, cmd_802_11_scan, 0,
                                            0, 0, pscancfgout);
                if (scanned >= 2 && !full_scan) {
-                       priv->adapter->last_scanned_channel = ptmpchan->channumber;
                        ret = 0;
                        goto done;
                }
                scanned = 0;
        }
 
+done:
        priv->adapter->last_scanned_channel = ptmpchan->channumber;
 
+       /* Tell userspace the scan table has been updated */
        memset(&wrqu, 0, sizeof(union iwreq_data));
        wireless_send_event(priv->dev, SIOCGIWSCAN, &wrqu, NULL);
 
-done:
        lbs_deb_leave_args(LBS_DEB_SCAN, "ret %d", ret);
        return ret;
 }