[PATCH 4/7] UML - Fix load average >=1

From: Jeff Dike
Date: Thu Jul 28 2005 - 11:44:29 EST


update_process_times was missing its irq_enter/irq_exit wrapper. This caused
ksoftirqd to be scheduled on every clock tick.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxx>

Index: linux-2.6.12-rc3-mm2/arch/um/kernel/time_kern.c
===================================================================
--- linux-2.6.12-rc3-mm2.orig/arch/um/kernel/time_kern.c 2005-07-28 11:06:35.000000000 -0400
+++ linux-2.6.12-rc3-mm2/arch/um/kernel/time_kern.c 2005-07-28 11:26:17.000000000 -0400
@@ -137,7 +137,10 @@
void timer_handler(int sig, union uml_pt_regs *regs)
{
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();
if(current_thread->cpu == 0)
timer_irq(regs);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/