idle.c (458ce2910aa83d8a2cafb489d727f7da839e73c6) | idle.c (bd2f55361f18347e890d52ff9cfd8895455ec11b) |
---|---|
1/* 2 * Idle daemon for PowerPC. Idle daemon will handle any action 3 * that needs to be taken when the system becomes idle. 4 * 5 * Originally written by Cort Dougan (cort@cs.nmt.edu). 6 * Subsequent 32-bit hacking by Tom Rini, Armin Kuster, 7 * Paul Mackerras and others. 8 * --- 87 unchanged lines hidden (view full) --- 96 HMT_very_low(); 97 } 98 } 99 100 HMT_medium(); 101 ppc64_runlatch_on(); 102 rcu_idle_exit(); 103 tick_nohz_idle_exit(); | 1/* 2 * Idle daemon for PowerPC. Idle daemon will handle any action 3 * that needs to be taken when the system becomes idle. 4 * 5 * Originally written by Cort Dougan (cort@cs.nmt.edu). 6 * Subsequent 32-bit hacking by Tom Rini, Armin Kuster, 7 * Paul Mackerras and others. 8 * --- 87 unchanged lines hidden (view full) --- 96 HMT_very_low(); 97 } 98 } 99 100 HMT_medium(); 101 ppc64_runlatch_on(); 102 rcu_idle_exit(); 103 tick_nohz_idle_exit(); |
104 preempt_enable_no_resched(); 105 if (cpu_should_die()) | 104 if (cpu_should_die()) { 105 preempt_enable_no_resched(); |
106 cpu_die(); | 106 cpu_die(); |
107 schedule(); 108 preempt_disable(); | 107 } 108 schedule_preempt_disabled(); |
109 } 110} 111 112 113/* 114 * cpu_idle_wait - Used to ensure that all the CPUs come out of the old 115 * idle loop and start using the new idle loop. 116 * Required while changing idle handler on SMP systems. --- 52 unchanged lines hidden --- | 109 } 110} 111 112 113/* 114 * cpu_idle_wait - Used to ensure that all the CPUs come out of the old 115 * idle loop and start using the new idle loop. 116 * Required while changing idle handler on SMP systems. --- 52 unchanged lines hidden --- |