Re: BUG-lockdep and freeze (was: Arrr! Linux 2.6.18)

Eric Rannaud
2006-09-30T22:00:47Z

On 9/30/06, Andrew Morton <akpm@osdl.org> wrote:
> You could set CONFIG_UNWIND_INFO=n and CONFIG_STACK_UNWIND=n and reenable
> lockdep. That will a) tell us if there's some lockdep problem and b) will
> give us a clearer look at any locking problems which your kernel is
> detecting.

All right. Here is the stacktrace I get with config
CONFIG_UNWIND_INFO=n and CONFIG_STACK_UNWIND=n and v2.6.18 (all the
rest being equal http://engm.ath.cx/kernel/config-2.6.18). (and no
freeze)

[ 153.552157] BUG: warning at
kernel/lockdep.c:565/print_infinite_recursion_bug()
[ 153.552252]
[ 153.552253] Call Trace:
[ 153.552346] [<ffffffff8024b84d>] print_infinite_recursion_bug+0x3d/0x50
[ 153.552398] [<ffffffff8024b95f>] find_usage_backwards+0x2f/0xd0
[ 153.552447] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552496] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552545] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552594] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552643] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552704] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552767] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552835] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552896] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.552958] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553019] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553081] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553145] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553206] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553268] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553330] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553392] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553454] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553515] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553578] [<ffffffff8024b9c3>] find_usage_backwards+0x93/0xd0
[ 153.553643] [<ffffffff804aa97a>] trace_hardirqs_on_thunk+0x35/0x37
[ 153.553706] [<ffffffff8024c370>] check_usage+0x40/0x2b0
[ 153.553768] [<ffffffff8024dc40>] __lock_acquire+0xa50/0xd20
[ 153.553830] [<ffffffff8024de2f>] __lock_acquire+0xc3f/0xd20
[ 153.553894] [<ffffffff80227c2b>] double_rq_lock+0x2b/0x50
[ 153.553955] [<ffffffff8024e29b>] lock_acquire+0x8b/0xc0
[ 153.554016] [<ffffffff80227c2b>] double_rq_lock+0x2b/0x50
[ 153.554077] [<ffffffff804aae25>] _spin_lock+0x25/0x40
[ 153.554138] [<ffffffff80227c2b>] double_rq_lock+0x2b/0x50
[ 153.554199] [<ffffffff8022af8b>] migration_thread+0x22b/0x2e0
[ 153.554260] [<ffffffff8022ad60>] migration_thread+0x0/0x2e0
[ 153.554322] [<ffffffff80246b9a>] kthread+0xda/0x110
[ 153.554384] [<ffffffff8020aaa0>] child_rip+0xa/0x12
[ 153.554443] [<ffffffff804ab30b>] _spin_unlock_irq+0x2b/0x40
[ 153.554507] [<ffffffff8020a0dc>] restore_args+0x0/0x30
[ 153.554568] [<ffffffff80246ac0>] kthread+0x0/0x110
[ 153.554628] [<ffffffff8020aa96>] child_rip+0x0/0x12

Thanks.
er.