lkml.org 
[lkml]   [2006]   [Sep]   [5]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 5 Sep 2006 20:12:41 +0200
FromIngo Molnar <>
SubjectRe: lockdep oddity
* Heiko Carstens <heiko.carstens@de.ibm.com> wrote:

> The lock validator gives me this (latest -mm and 2.6.18-rc6):
> 
> ===================================== 
> [ BUG: bad unlock balance detected! ] 
> ------------------------------------- 
> swapper/0 is trying to release lock (resource_lock) at:
> [<0000000000042842>] request_resource+0x52/0x88 
> but there are no more locks to release! 
> 
> The reason is that the BUILD_LOCK_OPS macros in kernel/lockdep.c don't 
> contain any of the *_acquire calls, while all of the _unlock functions 
> contain a *_release call. Hence I get immediately unbalanced locks.

hmmm ... that sounds like a bug. Weird - i recently ran 
PREEMPT+SMP+LOCKDEP kernels and didnt notice this.

> Found this will debugging some random memory corruptions that happen 
> when CONFIG_PROVE_LOCKING and CONFIG_PROFILE_LIKELY are both on. 
> Switching both off or having only one of them on seems to work.

previously i had some weirdnesses with PROFILE_LIKELY too, they were 
caused by it generating cross-calls from within lockdep. Do the 
corruptions go away if you remove all likely() and unlikely() markings 
from kernel/lockdep.c?

	Ingo
-
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: 2006-09-05 20:23    [from the cache]
©2003-2008