提交 5bb85f18 编写于 作者: D Dave Kleikamp 提交者: 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: NDave 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: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 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% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册