Commit 7e1f49da authored by Jeff Dike's avatar Jeff Dike Committed by Linus Torvalds

[PATCH] uml: Fix load average >=1

update_process_times was missing its irq_enter/irq_exit wrapper.  This caused
ksoftirqd to be scheduled on every clock tick.
Signed-off-by: default avatarJeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent d9b7cc84
...@@ -137,7 +137,10 @@ long um_stime(int __user *tptr) ...@@ -137,7 +137,10 @@ long um_stime(int __user *tptr)
void timer_handler(int sig, union uml_pt_regs *regs) void timer_handler(int sig, union uml_pt_regs *regs)
{ {
local_irq_disable(); local_irq_disable();
update_process_times(CHOOSE_MODE(user_context(UPT_SP(regs)), (regs)->skas.is_user)); irq_enter();
update_process_times(CHOOSE_MODE(user_context(UPT_SP(regs)),
(regs)->skas.is_user));
irq_exit();
local_irq_enable(); local_irq_enable();
if(current_thread->cpu == 0) if(current_thread->cpu == 0)
timer_irq(regs); timer_irq(regs);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment