search for: vmi_stop_hz_timer

Displaying 12 results from an estimated 12 matches for "vmi_stop_hz_timer".

2007 Apr 18
0
[PATCH 1/9] Vmi timer fixes round two.patch
...tsc; static int disable_mtrr; +static int disable_noidle; /* Cached VMI operations */ struct { @@ -255,7 +256,6 @@ static void vmi_nop(void) } /* For NO_IDLE_HZ, we stop the clock when halting the kernel */ -#ifdef CONFIG_NO_IDLE_HZ static fastcall void vmi_safe_halt(void) { int idle = vmi_stop_hz_timer(); @@ -266,7 +266,6 @@ static fastcall void vmi_safe_halt(void) local_irq_enable(); } } -#endif #ifdef CONFIG_DEBUG_PAGE_TYPE @@ -742,12 +741,7 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); patch_offset(&irq_save_disable_callout[IRQ_PATCH_DISABL...
2007 Apr 18
0
[PATCH 1/9] Vmi timer fixes round two.patch
...tsc; static int disable_mtrr; +static int disable_noidle; /* Cached VMI operations */ struct { @@ -255,7 +256,6 @@ static void vmi_nop(void) } /* For NO_IDLE_HZ, we stop the clock when halting the kernel */ -#ifdef CONFIG_NO_IDLE_HZ static fastcall void vmi_safe_halt(void) { int idle = vmi_stop_hz_timer(); @@ -266,7 +266,6 @@ static fastcall void vmi_safe_halt(void) local_irq_enable(); } } -#endif #ifdef CONFIG_DEBUG_PAGE_TYPE @@ -742,12 +741,7 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); patch_offset(&irq_save_disable_callout[IRQ_PATCH_DISABL...
2007 Apr 18
1
[RFC, PATCH 24/24] i386 Vmi no idle hz
...cpu, unsigned long long cur_real_cycles, @@ -362,6 +399,87 @@ static void vmi_local_timer_interrupt(st vmi_account_stolen_cycles(cpu, cur_real_cycles, cur_process_times_cycles); } +#ifdef CONFIG_NO_IDLE_HZ + +/* Must be called only from idle loop, with interrupts disabled. */ +void vmi_stop_hz_timer(void) +{ + /* Note that cpu_set, cpu_clear are (SMP safe) atomic on x86. */ + + unsigned long seq, next; + unsigned long long real_cycles_expiry; + int cpu = smp_processor_id(); + + /* Allow disabling via /proc/sys/kernel/hz_timer. */ + if (sysctl_hz_timer != 0) + return; + + /* Set nohz_cpu_mask,...
2007 Apr 18
1
[RFC, PATCH 24/24] i386 Vmi no idle hz
...cpu, unsigned long long cur_real_cycles, @@ -362,6 +399,87 @@ static void vmi_local_timer_interrupt(st vmi_account_stolen_cycles(cpu, cur_real_cycles, cur_process_times_cycles); } +#ifdef CONFIG_NO_IDLE_HZ + +/* Must be called only from idle loop, with interrupts disabled. */ +void vmi_stop_hz_timer(void) +{ + /* Note that cpu_set, cpu_clear are (SMP safe) atomic on x86. */ + + unsigned long seq, next; + unsigned long long real_cycles_expiry; + int cpu = smp_processor_id(); + + /* Allow disabling via /proc/sys/kernel/hz_timer. */ + if (sysctl_hz_timer != 0) + return; + + /* Set nohz_cpu_mask,...
2007 Apr 18
1
[PATCH 9/10] Vmi timer update.patch
...e); } vmi_ops; +/* Cached VMI operations */ +struct vmi_timer_ops vmi_timer_ops; + /* * VMI patching routines. */ @@ -231,18 +234,6 @@ static void vmi_nop(void) { } -/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ -static fastcall void vmi_safe_halt(void) -{ - int idle = vmi_stop_hz_timer(); - vmi_ops.halt(); - if (idle) { - local_irq_disable(); - vmi_account_time_restart_hz_timer(); - local_irq_enable(); - } -} - #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -714,7 +705,6 @@ do { \ vmi_ops.cache = (void *)rel->eip; \ } \ } while (0) - /*...
2007 Apr 18
1
[PATCH 9/10] Vmi timer update.patch
...e); } vmi_ops; +/* Cached VMI operations */ +struct vmi_timer_ops vmi_timer_ops; + /* * VMI patching routines. */ @@ -231,18 +234,6 @@ static void vmi_nop(void) { } -/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ -static fastcall void vmi_safe_halt(void) -{ - int idle = vmi_stop_hz_timer(); - vmi_ops.halt(); - if (idle) { - local_irq_disable(); - vmi_account_time_restart_hz_timer(); - local_irq_enable(); - } -} - #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -714,7 +705,6 @@ do { \ vmi_ops.cache = (void *)rel->eip; \ } \ } while (0) - /*...
2007 Apr 18
0
[PATCH 6/6] VMI timer patches
..., int); + void (fastcall *halt)(void); } vmi_ops; /* XXX move this to alternative.h */ @@ -252,7 +254,20 @@ static void vmi_nop(void) { } - +/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ +#ifdef CONFIG_NO_IDLE_HZ +static fastcall void vmi_safe_halt(void) +{ + int idle = vmi_stop_hz_timer(); + vmi_ops.halt(); + if (idle) { + local_irq_disable(); + vmi_account_time_restart_hz_timer(); + local_irq_enable(); + } +} +#endif + #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -726,7 +741,12 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); p...
2007 Apr 18
0
[PATCH 6/6] VMI timer patches
..., int); + void (fastcall *halt)(void); } vmi_ops; /* XXX move this to alternative.h */ @@ -252,7 +254,20 @@ static void vmi_nop(void) { } - +/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ +#ifdef CONFIG_NO_IDLE_HZ +static fastcall void vmi_safe_halt(void) +{ + int idle = vmi_stop_hz_timer(); + vmi_ops.halt(); + if (idle) { + local_irq_disable(); + vmi_account_time_restart_hz_timer(); + local_irq_enable(); + } +} +#endif + #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -726,7 +741,12 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); p...
2007 Apr 18
0
[PATCH 5/5] Vmi timer.patch
..., int); + void (fastcall *halt)(void); } vmi_ops; /* XXX move this to alternative.h */ @@ -252,7 +254,20 @@ static void vmi_nop(void) { } - +/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ +#ifdef CONFIG_NO_IDLE_HZ +static fastcall void vmi_safe_halt(void) +{ + int idle = vmi_stop_hz_timer(); + vmi_ops.halt(); + if (idle) { + local_irq_disable(); + vmi_account_time_restart_hz_timer(); + local_irq_enable(); + } +} +#endif + #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -726,7 +741,12 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); p...
2007 Apr 18
0
[PATCH 5/5] Vmi timer.patch
..., int); + void (fastcall *halt)(void); } vmi_ops; /* XXX move this to alternative.h */ @@ -252,7 +254,20 @@ static void vmi_nop(void) { } - +/* For NO_IDLE_HZ, we stop the clock when halting the kernel */ +#ifdef CONFIG_NO_IDLE_HZ +static fastcall void vmi_safe_halt(void) +{ + int idle = vmi_stop_hz_timer(); + vmi_ops.halt(); + if (idle) { + local_irq_disable(); + vmi_account_time_restart_hz_timer(); + local_irq_enable(); + } +} +#endif + #ifdef CONFIG_DEBUG_PAGE_TYPE #ifdef CONFIG_X86_PAE @@ -726,7 +741,12 @@ static inline int __init activate_vmi(vo (char *)paravirt_ops.save_fl); p...
2007 Apr 18
31
[PATCH 00/28] Updates for firstfloor paravirt-ops patches
Hi Andi, This is a set of updates for the firstfloor patch queue. Quick rundown: revert-mm-x86_64-mm-account-for-module-percpu-space-separately-from-kernel-percpu.patch separate-module-percpu-space.patch Update the module percpu accounting patch fix-ff-allow-percpu-variables-to-be-page-aligned.patch Make sure the percpu memory allocation is page-aligned
2007 Apr 18
31
[PATCH 00/28] Updates for firstfloor paravirt-ops patches
Hi Andi, This is a set of updates for the firstfloor patch queue. Quick rundown: revert-mm-x86_64-mm-account-for-module-percpu-space-separately-from-kernel-percpu.patch separate-module-percpu-space.patch Update the module percpu accounting patch fix-ff-allow-percpu-variables-to-be-page-aligned.patch Make sure the percpu memory allocation is page-aligned