orinoco: Clear dangling pointer on hardware busy
authorarmadefuego@gmail.com <armadefuego@gmail.com>
Tue, 22 Mar 2011 16:49:15 +0000 (09:49 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 23 Mar 2011 19:22:04 +0000 (15:22 -0400)
On hardware busy the scan request pointer should be cleared, as higher
levels will release. This avoids a crash when that pointer is
erroneously used later.

Signed-off-by: Joseph J. Gunn <armadefuego@yahoo.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/orinoco/cfg.c

index 09fae2f0ea08010309618f93ab0ebdb5f64be84e..736bbb9bd1d05cceb31a45589966248fd1b1ef86 100644 (file)
@@ -153,6 +153,9 @@ static int orinoco_scan(struct wiphy *wiphy, struct net_device *dev,
        priv->scan_request = request;
 
        err = orinoco_hw_trigger_scan(priv, request->ssids);
+       /* On error the we aren't processing the request */
+       if (err)
+               priv->scan_request = NULL;
 
        return err;
 }