Re: [BUG-REPORT][PREEMPT-RT] 2.6.33.1-rt11 triggersDEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled), in a 32-bit kvm session
From: Thomas Gleixner
Date: Fri Mar 26 2010 - 15:01:23 EST
On Fri, 26 Mar 2010, John Kacur wrote:
> During boot-up of 2.6.33.1-rt11 in a 32-bit qemu-kvm machine,
> The following warning is reliably (every time) triggered.
>
> ------------[ cut here ]------------
> WARNING: at /home/jkacur/jk-2.6/kernel/fork.c:1065 copy_process+0x299/0x160f()
> Hardware name:
> Modules linked in:
> Pid: 64, comm: khelper Not tainted 2.6.33.1-rt11 #1
> Call Trace:
> [<c104961a>] warn_slowpath_common+0x83/0x9a
> [<c1049643>] warn_slowpath_null+0x12/0x15
> [<c1046f89>] copy_process+0x299/0x160f
> [<c1048711>] do_fork+0x235/0x4e2
> [<c107da08>] ? register_lock_class+0x17/0x22d
> [<c107e6dc>] ? mark_lock+0x1e/0x1c0
> [<c1064a2f>] ? ____call_usermodehelper+0x0/0x138
> [<c100ae09>] kernel_thread+0x79/0x81
> [<c1064a2f>] ? ____call_usermodehelper+0x0/0x138
> [<c100391c>] ? kernel_thread_helper+0x0/0x10
> [<c1064cc7>] __call_usermodehelper+0x75/0xa0
> [<c10673b6>] worker_thread+0x1f6/0x2fb
> [<c1067374>] ? worker_thread+0x1b4/0x2fb
> [<c1064c52>] ? __call_usermodehelper+0x0/0xa0
> [<c106a91e>] ? autoremove_wake_function+0x0/0x46
> [<c106a740>] kthread+0x6b/0x74
> [<c10671c0>] ? worker_thread+0x0/0x2fb
> [<c106a6d5>] ? kthread+0x0/0x74
> [<c106a6d5>] ? kthread+0x0/0x74
> [<c1003922>] kernel_thread_helper+0x6/0x10
> ---[ end trace a22d306b065d4a66 ]---
>
> I am happy to provide more information to help debug this.
Can you run the following patch please ?
Thanks,
tglx
---
diff --git a/kernel/fork.c b/kernel/fork.c
index 340cbc8..b63e8f5 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1062,7 +1062,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
rt_mutex_init_task(p);
#ifdef CONFIG_PROVE_LOCKING
- DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
+ //DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
+ if (!p->hardirqs_enabled)
+ print_irqtrace_events(p);
DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
#endif
retval = -EAGAIN;
--
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/