lkml.org 
[lkml]   [2007]   [Jul]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH -rt] temporary WARN_ON removal
From
Date

These two WARN_ON calls send my system into a boot hang. They trigger
over and over , some examples below.

[ 58.438501] WARNING: at kernel/sched.c:3785 schedule()
[ 58.443444] [<c039b224>] schedule+0x74/0x110
[ 58.447772] [<c039a67f>] rest_init+0x4f/0x60
[ 58.452092] [<c0490a8f>] start_kernel+0x2cf/0x310
[ 58.456848] [<c0490210>] unknown_bootoption+0x0/0x250
[ 58.461951] =======================
[ 58.465496] WARNING: at kernel/sched.c:3683 schedule_debug()
[ 58.471118] [<c039ae0c>] __schedule+0x4cc/0x760
[ 58.475702] [<c010511a>] print_trace_address+0x1a/0x30
[ 58.480893] [<c0129a2b>] printk+0x1b/0x20
[ 58.484957] [<c01051f8>] show_trace_log_lvl+0x28/0x30
[ 58.490060] [<c039b1de>] schedule+0x2e/0x110
[ 58.494385] [<c039a67f>] rest_init+0x4f/0x60
[ 58.498709] [<c0490a8f>] start_kernel+0x2cf/0x310
[ 58.503465] [<c0490210>] unknown_bootoption+0x0/0x250
[ 58.508569] =======================
On closer inspection I'm not sure they are correctly placed. They could
trigger or not depending on when/if certain threads run.

Here is a patch to comment them out. This should go into the
preempt-realtime-sched.patch

Signed-Off-By: Daniel Walker <dwalker@mvista.com>

Index: linux-2.6.22.1/kernel/sched.c
===================================================================
--- linux-2.6.22.1.orig/kernel/sched.c 2007-07-22 17:18:38.000000000 +0000
+++ linux-2.6.22.1/kernel/sched.c 2007-07-22 17:17:48.000000000 +0000
@@ -3680,7 +3680,7 @@ static noinline void __schedule_bug(stru
*/
static inline void schedule_debug(struct task_struct *prev)
{
- WARN_ON(system_state == SYSTEM_BOOTING);
+ //WARN_ON(system_state == SYSTEM_BOOTING);

/*
* Test if we are atomic. Since do_exit() needs to call into
@@ -3782,7 +3782,7 @@ asmlinkage void __sched __schedule(void)
*/
asmlinkage void __sched schedule(void)
{
- WARN_ON(system_state == SYSTEM_BOOTING);
+ //WARN_ON(system_state == SYSTEM_BOOTING);
/*
* Test if we have interrupts disabled.
*/

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

\
 
 \ /
  Last update: 2007-07-22 19:37    [from the cache]
©2003-2011 Jasper Spaans