diff options
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/kernel/process.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/sparc/kernel/process.c b/arch/sparc/kernel/process.c index 29e72b57d4fd..c39f4d01096d 100644 --- a/arch/sparc/kernel/process.c +++ b/arch/sparc/kernel/process.c | |||
@@ -120,7 +120,9 @@ void cpu_idle(void) | |||
120 | (*pm_idle)(); | 120 | (*pm_idle)(); |
121 | } | 121 | } |
122 | 122 | ||
123 | preempt_enable_no_resched(); | ||
123 | schedule(); | 124 | schedule(); |
125 | preempt_disable(); | ||
124 | check_pgt_cache(); | 126 | check_pgt_cache(); |
125 | } | 127 | } |
126 | } | 128 | } |
@@ -133,7 +135,9 @@ void cpu_idle(void) | |||
133 | /* endless idle loop with no priority at all */ | 135 | /* endless idle loop with no priority at all */ |
134 | while(1) { | 136 | while(1) { |
135 | if(need_resched()) { | 137 | if(need_resched()) { |
138 | preempt_enable_no_resched(); | ||
136 | schedule(); | 139 | schedule(); |
140 | preempt_disable(); | ||
137 | check_pgt_cache(); | 141 | check_pgt_cache(); |
138 | } | 142 | } |
139 | barrier(); /* or else gcc optimizes... */ | 143 | barrier(); /* or else gcc optimizes... */ |