From e648807501ed8447b536fc819d3a8c61bff5bb63 Mon Sep 17 00:00:00 2001 From: Olaf Kirch Date: Mon, 9 Jan 2006 17:00:37 +0100 Subject: [PATCH] --- yaml --- r: 18766 b: refs/heads/master c: d834a41c966c6a20368fadb59248740935e6fbae h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/ipw2200.c | 14 ++++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index bb0b3d5c5ceb..d249b95cbcce 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0b8d3256a0c1d75bbe8ef5b0de64843e3fc9f47b +refs/heads/master: d834a41c966c6a20368fadb59248740935e6fbae diff --git a/trunk/drivers/net/wireless/ipw2200.c b/trunk/drivers/net/wireless/ipw2200.c index 819be2b6b7df..4c28e332ecc3 100644 --- a/trunk/drivers/net/wireless/ipw2200.c +++ b/trunk/drivers/net/wireless/ipw2200.c @@ -8936,14 +8936,12 @@ static int ipw_request_direct_scan(struct ipw_priv *priv, char *essid, IPW_DEBUG_HC("starting request direct scan!\n"); if (priv->status & (STATUS_SCANNING | STATUS_SCAN_ABORTING)) { - err = wait_event_interruptible(priv->wait_state, - !(priv-> - status & (STATUS_SCANNING | - STATUS_SCAN_ABORTING))); - if (err) { - IPW_DEBUG_HC("aborting direct scan"); - goto done; - } + /* We should not sleep here; otherwise we will block most + * of the system (for instance, we hold rtnl_lock when we + * get here). + */ + err = -EAGAIN; + goto done; } memset(&scan, 0, sizeof(scan));