aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/process_32.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/process_32.c')
-rw-r--r--arch/x86/kernel/process_32.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index 37ad1e046aae..46f588151d92 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -101,7 +101,6 @@ void cpu_idle(void)
101 tick_nohz_stop_sched_tick(1); 101 tick_nohz_stop_sched_tick(1);
102 while (!need_resched()) { 102 while (!need_resched()) {
103 103
104 check_pgt_cache();
105 rmb(); 104 rmb();
106 105
107 if (cpu_is_offline(cpu)) 106 if (cpu_is_offline(cpu))
@@ -113,10 +112,12 @@ void cpu_idle(void)
113 pm_idle(); 112 pm_idle();
114 start_critical_timings(); 113 start_critical_timings();
115 } 114 }
115 local_irq_disable();
116 tick_nohz_restart_sched_tick(); 116 tick_nohz_restart_sched_tick();
117 preempt_enable_no_resched(); 117 __preempt_enable_no_resched();
118 schedule(); 118 __schedule();
119 preempt_disable(); 119 preempt_disable();
120 local_irq_enable();
120 } 121 }
121} 122}
122 123
@@ -148,8 +149,10 @@ void __show_regs(struct pt_regs *regs, int all)
148 regs->ax, regs->bx, regs->cx, regs->dx); 149 regs->ax, regs->bx, regs->cx, regs->dx);
149 printk(KERN_DEFAULT "ESI: %08lx EDI: %08lx EBP: %08lx ESP: %08lx\n", 150 printk(KERN_DEFAULT "ESI: %08lx EDI: %08lx EBP: %08lx ESP: %08lx\n",
150 regs->si, regs->di, regs->bp, sp); 151 regs->si, regs->di, regs->bp, sp);
151 printk(KERN_DEFAULT " DS: %04x ES: %04x FS: %04x GS: %04x SS: %04x\n", 152 printk(KERN_DEFAULT
152 (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, ss); 153 " DS: %04x ES: %04x FS: %04x GS: %04x SS: %04x preempt:%08x\n",
154 (u16)regs->ds, (u16)regs->es, (u16)regs->fs, gs, ss,
155 preempt_count());
153 156
154 if (!all) 157 if (!all)
155 return; 158 return;