forked from luck/tmp_suning_uos_patched
x86_64: prepare idle loop for dynamic ticks
Add tick_nohz_{stop,restart}_sched_tick to idle loop in prepartion for turning on dynticks. These are just noops until NO_HZ is enabled. Signed-off-by: Chris Wright <chrisw@sous-sol.org> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
This commit is contained in:
parent
c4d58cbd15
commit
0229068334
@ -38,6 +38,7 @@
|
|||||||
#include <linux/notifier.h>
|
#include <linux/notifier.h>
|
||||||
#include <linux/kprobes.h>
|
#include <linux/kprobes.h>
|
||||||
#include <linux/kdebug.h>
|
#include <linux/kdebug.h>
|
||||||
|
#include <linux/tick.h>
|
||||||
|
|
||||||
#include <asm/uaccess.h>
|
#include <asm/uaccess.h>
|
||||||
#include <asm/pgtable.h>
|
#include <asm/pgtable.h>
|
||||||
@ -208,6 +209,8 @@ void cpu_idle (void)
|
|||||||
if (__get_cpu_var(cpu_idle_state))
|
if (__get_cpu_var(cpu_idle_state))
|
||||||
__get_cpu_var(cpu_idle_state) = 0;
|
__get_cpu_var(cpu_idle_state) = 0;
|
||||||
|
|
||||||
|
tick_nohz_stop_sched_tick();
|
||||||
|
|
||||||
rmb();
|
rmb();
|
||||||
idle = pm_idle;
|
idle = pm_idle;
|
||||||
if (!idle)
|
if (!idle)
|
||||||
@ -228,6 +231,7 @@ void cpu_idle (void)
|
|||||||
__exit_idle();
|
__exit_idle();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tick_nohz_restart_sched_tick();
|
||||||
preempt_enable_no_resched();
|
preempt_enable_no_resched();
|
||||||
schedule();
|
schedule();
|
||||||
preempt_disable();
|
preempt_disable();
|
||||||
|
Loading…
Reference in New Issue
Block a user