summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/orinoco/scan.c
diff options
context:
space:
mode:
authorDavid Kilroy <kilroyd@gmail.com>2010-11-24 20:33:02 +0000
committerJohn W. Linville <linville@tuxdriver.com>2010-11-30 13:23:05 -0500
commitcf63495d0dbe435b475a44672f5dee150da6471b (patch)
treea43a42069bc2950260ba2aafa114ec66024983cd /drivers/net/wireless/orinoco/scan.c
parent5c5e138b590a748c57d54b39634cda974ab9af1d (diff)
downloadop-kernel-dev-cf63495d0dbe435b475a44672f5dee150da6471b.zip
op-kernel-dev-cf63495d0dbe435b475a44672f5dee150da6471b.tar.gz
orinoco: abort scan on interface down
This fixes the problem causing the following trace: ------------[ cut here ]------------ WARNING: at linux-2.6.34/net/wireless/core.c:633 wdev_cleanup_work+0xb7/0xe0 [cfg80211]() Hardware name: Latitude C840 Pid: 707, comm: cfg80211 Not tainted 2.6.34.7-0.5-desktop #1 Call Trace: [<c02065c3>] try_stack_unwind+0x173/0x190 [<c02051cf>] dump_trace+0x3f/0xe0 [<c020662b>] show_trace_log_lvl+0x4b/0x60 [<c0206658>] show_trace+0x18/0x20 [<c064e0b3>] dump_stack+0x6d/0x72 [<c02443ae>] warn_slowpath_common+0x6e/0xb0 [<c0244403>] warn_slowpath_null+0x13/0x20 [<e2db5497>] wdev_cleanup_work+0xb7/0xe0 [cfg80211] [<c025cfa9>] run_workqueue+0x79/0x170 [<c025d123>] worker_thread+0x83/0xe0 [<c025fef4>] kthread+0x74/0x80 [<c0203826>] kernel_thread_helper+0x6/0x10 ---[ end trace 3f0348b3b0c6f4ff ]--- Reported by: Giacomo Comes <comes@naic.edu> Signed-off-by: David Kilroy <kilroyd@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/orinoco/scan.c')
-rw-r--r--drivers/net/wireless/orinoco/scan.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/orinoco/scan.c b/drivers/net/wireless/orinoco/scan.c
index 4300d9d..86cb54c 100644
--- a/drivers/net/wireless/orinoco/scan.c
+++ b/drivers/net/wireless/orinoco/scan.c
@@ -229,3 +229,11 @@ void orinoco_add_hostscan_results(struct orinoco_private *priv,
priv->scan_request = NULL;
}
}
+
+void orinoco_scan_done(struct orinoco_private *priv, bool abort)
+{
+ if (priv->scan_request) {
+ cfg80211_scan_done(priv->scan_request, abort);
+ priv->scan_request = NULL;
+ }
+}
OpenPOWER on IntegriCloud