aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Kleikamp <shaggy@austin.ibm.com>2006-10-10 17:45:46 -0400
committerJohn W. Linville <linville@tuxdriver.com>2006-10-16 20:09:49 -0400
commit5bb85f18087b10a908bd793e9fd3ccd63aebb724 (patch)
treedf42475293ddb5f4a6df3ee6da3999d7df55c66c
parent53077944f119808df3d1c6be07241f17a87e7c28 (diff)
[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: Dave 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: Andrew Morton <akpm@osdl.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/airo.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
index e0710fa9702e..efcdaf1c5f73 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
@@ -3098,7 +3098,8 @@ static int airo_thread(void *data) {
3098 set_bit(JOB_AUTOWEP, &ai->jobs); 3098 set_bit(JOB_AUTOWEP, &ai->jobs);
3099 break; 3099 break;
3100 } 3100 }
3101 if (!kthread_should_stop()) { 3101 if (!kthread_should_stop() &&
3102 !freezing(current)) {
3102 unsigned long wake_at; 3103 unsigned long wake_at;
3103 if (!ai->expires || !ai->scan_timeout) { 3104 if (!ai->expires || !ai->scan_timeout) {
3104 wake_at = max(ai->expires, 3105 wake_at = max(ai->expires,
@@ -3110,7 +3111,8 @@ static int airo_thread(void *data) {
3110 schedule_timeout(wake_at - jiffies); 3111 schedule_timeout(wake_at - jiffies);
3111 continue; 3112 continue;
3112 } 3113 }
3113 } else if (!kthread_should_stop()) { 3114 } else if (!kthread_should_stop() &&
3115 !freezing(current)) {
3114 schedule(); 3116 schedule();
3115 continue; 3117 continue;
3116 } 3118 }