From: Dave Kleikamp <shaggy@austin.ibm.com>
To: Adrian Bunk <bunk@stusta.de>
Cc: Alex Romosan <romosan@sycorax.lbl.gov>,
linux-kernel@vger.kernel.org, linville@tuxdriver.com,
netdev@vger.kernel.org, pavel@suse.cz, linux-pm@osdl.org
Subject: Re: 2.6.19-rc1 regression: airo suspend fails
Date: Sat, 07 Oct 2006 14:52:51 -0500 [thread overview]
Message-ID: <1160250771.24902.6.camel@kleikamp.austin.ibm.com> (raw)
In-Reply-To: <20061006184706.GR16812@stusta.de>
On Fri, 2006-10-06 at 20:47 +0200, Adrian Bunk wrote:
> On Thu, Oct 05, 2006 at 09:31:16PM -0700, Alex Romosan wrote:
> > it breaks suspend when the airo module is loaded:
> >
> > kernel: Stopping tasks: =================================================================================
> > kernel: stopping tasks timed out after 20 seconds (1 tasks remaining):
> > kernel: eth1
> > kernel: Restarting tasks...<6> Strange, eth1 not stopped
> >
> > if i remove the airo module suspend works normally (this is on a
> > thinkpad t40).
>
> Thanks for your report.
>
> Let's try to figure out what broke it.
I believe it was broken by:
http://www.kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3b4c7d640376dbccfe80fc4f7b8772ecc7de28c5
I have seen this in the -mm tree, but didn't follow up at the time. I
was able to fix it with the following patch. I don't know if it's the
best fix, but it seems to follow the same logic as the original code.
The airo driver used to break out of while loop if there were any signals
pending. Since it no longer checks for signals, it at least needs to check
if it needs to be frozen.
Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
diff -Nurp linux-2.6.19-rc1/drivers/net/wireless/airo.c linux/drivers/net/wireless/airo.c
--- linux-2.6.19-rc1/drivers/net/wireless/airo.c 2006-10-05 07:22:39.000000000 -0500
+++ linux/drivers/net/wireless/airo.c 2006-10-07 13:42:13.000000000 -0500
@@ -3090,7 +3090,8 @@ static int airo_thread(void *data) {
set_bit(JOB_AUTOWEP, &ai->jobs);
break;
}
- if (!kthread_should_stop()) {
+ if (!kthread_should_stop() &&
+ !freezing(current)) {
unsigned long wake_at;
if (!ai->expires || !ai->scan_timeout) {
wake_at = max(ai->expires,
@@ -3102,7 +3103,8 @@ static int airo_thread(void *data) {
schedule_timeout(wake_at - jiffies);
continue;
}
- } else if (!kthread_should_stop()) {
+ } else if (!kthread_should_stop() &&
+ !freezing(current)) {
schedule();
continue;
}
--
David Kleikamp
IBM Linux Technology Center
next prev parent reply other threads:[~2006-10-07 19:52 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.64.0610042017340.3952@g5.osdl.org>
[not found] ` <871wpmoyjv.fsf@sycorax.lbl.gov>
2006-10-06 18:47 ` 2.6.19-rc1 regression: airo suspend fails Adrian Bunk
2006-10-07 3:54 ` Alex Romosan
2006-10-07 19:52 ` Dave Kleikamp [this message]
2006-10-07 20:17 ` Alex Romosan
2006-10-08 6:43 ` Pavel Machek
2006-10-07 21:46 ` 2.6.19-rc1: known regressions (v2) Adrian Bunk
2006-10-08 7:12 ` x60 backlight Re: [discuss] " Pavel Machek
2006-10-08 17:38 ` Adrian Bunk
2006-10-08 17:59 ` Michael S. Tsirkin
2006-10-08 19:30 ` Adrian Bunk
2006-10-16 19:39 ` Michael S. Tsirkin
2006-10-08 18:36 ` Pavel Machek
2006-10-08 19:29 ` Adrian Bunk
2006-10-08 23:44 ` Jeremy Fitzhardinge
2006-10-08 8:56 ` matthieu castet
2006-10-10 5:10 ` 2.6.19-rc1: known regressions (v3) Adrian Bunk
2006-10-10 22:58 ` Paul Mackerras
2006-10-11 3:08 ` Adrian Bunk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1160250771.24902.6.camel@kleikamp.austin.ibm.com \
--to=shaggy@austin.ibm.com \
--cc=bunk@stusta.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@osdl.org \
--cc=linville@tuxdriver.com \
--cc=netdev@vger.kernel.org \
--cc=pavel@suse.cz \
--cc=romosan@sycorax.lbl.gov \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox