aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc64/kernel/process.c')
-rw-r--r--arch/sparc64/kernel/process.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/arch/sparc64/kernel/process.c b/arch/sparc64/kernel/process.c
index d00cb7ad89b9..1ab8283efc4c 100644
--- a/arch/sparc64/kernel/process.c
+++ b/arch/sparc64/kernel/process.c
@@ -56,6 +56,8 @@ void default_idle(void)
56{ 56{
57} 57}
58 58
59
60
59#ifndef CONFIG_SMP 61#ifndef CONFIG_SMP
60 62
61/* 63/*
@@ -104,19 +106,11 @@ void cpu_idle(void)
104 106
105 while(1) { 107 while(1) {
106 if (need_resched()) { 108 if (need_resched()) {
107 cpuinfo->idle_volume = 0;
108 preempt_enable_no_resched(); 109 preempt_enable_no_resched();
109 schedule(); 110 schedule();
110 preempt_disable(); 111 preempt_disable();
111 check_pgt_cache(); 112 check_pgt_cache();
112 } 113 }
113 cpuinfo->idle_volume++;
114
115 /* The store ordering is so that IRQ handlers on
116 * other cpus see our increasing idleness for the buddy
117 * redistribution algorithm. -DaveM
118 */
119 membar_storeload_storestore();
120 } 114 }
121} 115}
122 116