Re: [patch 0/3] [-rt] Fixes the timeout-bug in the rtmutex/PI-futex.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Wed, 26 Jul 2006, Ingo Molnar wrote:


* Ingo Molnar <[email protected]> wrote:

and i also had to do the fixes below to get it to build.

then it crashed with the assert below. I'll skip this one for now. I've
attached the patches (cleaned up for whitespaces) plus the
build-fixpatch.

	Ingo

Brought up 2 CPUs
BUG at kernel/rtmutex.c:773!
------------[ cut here ]------------
kernel BUG at kernel/rtmutex.c:773!
invalid opcode: 0000 [#1]
PREEMPT SMP
Modules linked in:
CPU:    0
EIP:    0060:[<c03e407c>]    Not tainted VLI
EFLAGS: 00010246   (2.6.17-rt7 #14)
EIP is at rt_lock_slowlock+0x21e/0x231
eax: 00000020   ebx: c31d7000   ecx: c0477be4   edx: c31d97f0
esi: 00000000   edi: c31d7d34   ebp: c31d7cdc   esp: c31d7c70
ds: 007b   es: 007b   ss: 0068   preempt: 00000001



It is a very simple bug: The waiter was made garbage by the debug_rt_mutex_free_waiter() before it was used in the BUG_ON() line. My UP machine boots now with CONFIG_DEBUG_RT_MUTEXEX on in -rt8. Fix is below. Apply on top of the patches you just send me with no further changes. I hope I don't have white space damage in this small patch!!

Esben

 kernel/rtmutex.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.17-rt8/kernel/rtmutex.c
===================================================================
--- linux-2.6.17-rt8.orig/kernel/rtmutex.c
+++ linux-2.6.17-rt8/kernel/rtmutex.c
@@ -768,9 +768,9 @@ rt_lock_slowlock(struct rt_mutex *lock _
 	if (adjust_prio_final)
 		rt_mutex_adjust_prio_final(current, waiter.old_sched_lifo);

-	debug_rt_mutex_free_waiter(&waiter);
 	BUG_ON(current->boosting_prio != MAX_PRIO);
 	BUG_ON(waiter.old_sched_lifo != get_sched_lifo());
+	debug_rt_mutex_free_waiter(&waiter);
 }

 /*

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux