Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+4 −2
Original line number Original line Diff line number Diff line
@@ -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) {
						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;
				}
				}