mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-21 08:19:28 +00:00
![Andi Kleen](/assets/img/avatar_default.png)
This adds a new notifier chain that is called with IDLE_START when a CPU goes idle and IDLE_END when it goes out of idle. The context can be idle thread or interrupt context. Since we cannot rely on MONITOR/MWAIT existing the idle end check currently has to be done in all interrupt handlers. They were originally inspired by the similar s390 implementation. They have a variety of applications: - They will be needed for CONFIG_NO_IDLE_HZ - They can be used for oprofile to fix up the missing time in idle when performance counters don't tick. - They can be used for better C state management in ACPI - They could be used for microstate accounting. This is just infrastructure so far, no users. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
14 lines
287 B
C
14 lines
287 B
C
#ifndef _ASM_X86_64_IDLE_H
|
|
#define _ASM_X86_64_IDLE_H 1
|
|
|
|
#define IDLE_START 1
|
|
#define IDLE_END 2
|
|
|
|
struct notifier_block;
|
|
void idle_notifier_register(struct notifier_block *n);
|
|
void idle_notifier_unregister(struct notifier_block *n);
|
|
|
|
void enter_idle(void);
|
|
void exit_idle(void);
|
|
|
|
#endif
|