[PATCH 4/8] UML - Fix timer initialization

From: Jeff Dike
Date: Mon Jun 20 2005 - 14:50:41 EST


In skas mode, the call to uml_idle_timer permanently shut off the
virtual timer, resulting in no timer ticks to anything but the idle
thread. This is likely the cause of the soft lockups that are seen
sporadically in recent UMLs.

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

Index: linux-2.6.12/arch/um/kernel/process_kern.c
===================================================================
--- linux-2.6.12.orig/arch/um/kernel/process_kern.c 2005-06-20 12:02:19.000000000 -0400
+++ linux-2.6.12/arch/um/kernel/process_kern.c 2005-06-20 12:06:08.000000000 -0400
@@ -169,7 +169,7 @@ int current_pid(void)

void default_idle(void)
{
- uml_idle_timer();
+ CHOOSE_MODE(uml_idle_timer(), (void) 0);

atomic_inc(&init_mm.mm_count);
current->mm = &init_mm;
Index: linux-2.6.12/arch/um/kernel/skas/process_kern.c
===================================================================
--- linux-2.6.12.orig/arch/um/kernel/skas/process_kern.c 2005-06-20 12:02:32.000000000 -0400
+++ linux-2.6.12/arch/um/kernel/skas/process_kern.c 2005-06-20 12:06:08.000000000 -0400
@@ -180,7 +180,6 @@ int start_uml_skas(void)
start_userspace(0);

init_new_thread_signals(1);
- uml_idle_timer();

init_task.thread.request.u.thread.proc = start_kernel_proc;
init_task.thread.request.u.thread.arg = NULL;

-
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/