Commit 5bb85f18 authored by Dave Kleikamp's avatar Dave Kleikamp Committed by John W. Linville

[PATCH] airo: check if need to freeze

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: default avatarDave Kleikamp <shaggy@austin.ibm.com>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 53077944
...@@ -3098,7 +3098,8 @@ static int airo_thread(void *data) { ...@@ -3098,7 +3098,8 @@ static int airo_thread(void *data) {
set_bit(JOB_AUTOWEP, &ai->jobs); set_bit(JOB_AUTOWEP, &ai->jobs);
break; break;
} }
if (!kthread_should_stop()) { if (!kthread_should_stop() &&
!freezing(current)) {
unsigned long wake_at; unsigned long wake_at;
if (!ai->expires || !ai->scan_timeout) { if (!ai->expires || !ai->scan_timeout) {
wake_at = max(ai->expires, wake_at = max(ai->expires,
...@@ -3110,7 +3111,8 @@ static int airo_thread(void *data) { ...@@ -3110,7 +3111,8 @@ static int airo_thread(void *data) {
schedule_timeout(wake_at - jiffies); schedule_timeout(wake_at - jiffies);
continue; continue;
} }
} else if (!kthread_should_stop()) { } else if (!kthread_should_stop() &&
!freezing(current)) {
schedule(); schedule();
continue; continue;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment