View | Details | Raw Unified | Return to bug 15419
Collapse All | Expand All

(-)a/drivers/net/wireless/ipw2x00/ipw2200.c (-2 / +11 lines)
Lines 2348-2363 static void ipw_bg_adapter_restart(struct work_struct *work) Link Here
2348
	mutex_unlock(&priv->mutex);
2348
	mutex_unlock(&priv->mutex);
2349
}
2349
}
2350
2350
2351
#define IPW_SCAN_CHECK_WATCHDOG (5 * HZ)
2351
static void ipw_abort_scan(struct ipw_priv *priv);
2352
2353
#define IPW_SCAN_CHECK_WATCHDOG	(5 * HZ)
2352
2354
2353
static void ipw_scan_check(void *data)
2355
static void ipw_scan_check(void *data)
2354
{
2356
{
2355
	struct ipw_priv *priv = data;
2357
	struct ipw_priv *priv = data;
2356
	if (priv->status & (STATUS_SCANNING | STATUS_SCAN_ABORTING)) {
2358
2359
	if (priv->status & STATUS_SCAN_ABORTING) {
2357
		IPW_DEBUG_SCAN("Scan completion watchdog resetting "
2360
		IPW_DEBUG_SCAN("Scan completion watchdog resetting "
2358
			       "adapter after (%dms).\n",
2361
			       "adapter after (%dms).\n",
2359
			       jiffies_to_msecs(IPW_SCAN_CHECK_WATCHDOG));
2362
			       jiffies_to_msecs(IPW_SCAN_CHECK_WATCHDOG));
2360
		queue_work(priv->workqueue, &priv->adapter_restart);
2363
		queue_work(priv->workqueue, &priv->adapter_restart);
2364
	} else if (priv->status & STATUS_SCANNING) {
2365
		IPW_DEBUG_SCAN("Scan completion watchdog aborting scan "
2366
			       "after (%dms).\n",
2367
			       jiffies_to_msecs(IPW_SCAN_CHECK_WATCHDOG));
2368
		ipw_abort_scan(priv);
2369
		queue_delayed_work(priv->workqueue, &priv->scan_check, HZ);
2361
	}
2370
	}
2362
}
2371
}
2363
2372

Return to bug 15419