diff options
author | Ingo Molnar <mingo@elte.hu> | 2012-03-01 10:26:41 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2012-03-01 10:26:43 +0100 |
commit | 7e4d960993331e92567f0180e45322a93e6780ba (patch) | |
tree | 4d7444035303fc0b545e88afbd894176344fb2a3 /arch/s390/kernel/process.c | |
parent | de5bdff7a72acc281219be2b8edeeca1fd81c542 (diff) | |
parent | 164974a8f2a482f1abcb027c6d1a89dd79b14297 (diff) | |
download | talos-op-linux-7e4d960993331e92567f0180e45322a93e6780ba.tar.gz talos-op-linux-7e4d960993331e92567f0180e45322a93e6780ba.zip |
Merge branch 'linus' into sched/core
Merge reason: we'll queue up dependent patches.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/s390/kernel/process.c')
-rw-r--r-- | arch/s390/kernel/process.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c index 3201ae447990..e795933eb2cb 100644 --- a/arch/s390/kernel/process.c +++ b/arch/s390/kernel/process.c @@ -29,7 +29,6 @@ #include <asm/irq.h> #include <asm/timer.h> #include <asm/nmi.h> -#include <asm/compat.h> #include <asm/smp.h> #include "entry.h" @@ -76,7 +75,6 @@ static void default_idle(void) if (test_thread_flag(TIF_MCCK_PENDING)) { local_mcck_enable(); local_irq_enable(); - s390_handle_mcck(); return; } trace_hardirqs_on(); @@ -93,10 +91,12 @@ void cpu_idle(void) for (;;) { tick_nohz_idle_enter(); rcu_idle_enter(); - while (!need_resched()) + while (!need_resched() && !test_thread_flag(TIF_MCCK_PENDING)) default_idle(); rcu_idle_exit(); tick_nohz_idle_exit(); + if (test_thread_flag(TIF_MCCK_PENDING)) + s390_handle_mcck(); preempt_enable_no_resched(); schedule(); preempt_disable(); |