aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/platforms/iseries/setup.c4
-rw-r--r--arch/powerpc/platforms/pseries/setup.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/iseries/setup.c b/arch/powerpc/platforms/iseries/setup.c
index d3e4bf756c83..0130f2619dac 100644
--- a/arch/powerpc/platforms/iseries/setup.c
+++ b/arch/powerpc/platforms/iseries/setup.c
@@ -694,7 +694,9 @@ static void iseries_shared_idle(void)
694 if (hvlpevent_is_pending()) 694 if (hvlpevent_is_pending())
695 process_iSeries_events(); 695 process_iSeries_events();
696 696
697 preempt_enable_no_resched();
697 schedule(); 698 schedule();
699 preempt_disable();
698 } 700 }
699} 701}
700 702
@@ -726,7 +728,9 @@ static void iseries_dedicated_idle(void)
726 } 728 }
727 729
728 ppc64_runlatch_on(); 730 ppc64_runlatch_on();
731 preempt_enable_no_resched();
729 schedule(); 732 schedule();
733 preempt_disable();
730 } 734 }
731} 735}
732 736
diff --git a/arch/powerpc/platforms/pseries/setup.c b/arch/powerpc/platforms/pseries/setup.c
index e78c39368841..4854f5eb5c3d 100644
--- a/arch/powerpc/platforms/pseries/setup.c
+++ b/arch/powerpc/platforms/pseries/setup.c
@@ -539,7 +539,9 @@ static void pseries_dedicated_idle(void)
539 lpaca->lppaca.idle = 0; 539 lpaca->lppaca.idle = 0;
540 ppc64_runlatch_on(); 540 ppc64_runlatch_on();
541 541
542 preempt_enable_no_resched();
542 schedule(); 543 schedule();
544 preempt_disable();
543 545
544 if (cpu_is_offline(cpu) && system_state == SYSTEM_RUNNING) 546 if (cpu_is_offline(cpu) && system_state == SYSTEM_RUNNING)
545 cpu_die(); 547 cpu_die();
@@ -583,7 +585,9 @@ static void pseries_shared_idle(void)
583 lpaca->lppaca.idle = 0; 585 lpaca->lppaca.idle = 0;
584 ppc64_runlatch_on(); 586 ppc64_runlatch_on();
585 587
588 preempt_enable_no_resched();
586 schedule(); 589 schedule();
590 preempt_disable();
587 591
588 if (cpu_is_offline(cpu) && system_state == SYSTEM_RUNNING) 592 if (cpu_is_offline(cpu) && system_state == SYSTEM_RUNNING)
589 cpu_die(); 593 cpu_die();