Re: BUG: kernel-2.6.27-rc5: soft lockup - CPU#X stuck for 61s!

From: Tetsuo Handa
Date: Sat Aug 30 2008 - 21:36:50 EST


Hello.

> Kernel: 2.6.27-rc5 + Mandriva patches
Yes, it is caused by TOMOYO patches.

> Call Trace:
> [<ffffffff804d6b69>] ? _spin_lock+0x9/0x10
> [<ffffffff803319c0>] ? ccs_realpath_from_dentry2+0x140/0x430
> [<ffffffff802b7bc6>] ? ksize+0x16/0xc0
> [<ffffffff80331d8f>] ? ccs_realpath_from_dentry+0x3f/0x60
> [<ffffffff80331dff>] ? ccs_realpath_nofollow+0x4f/0x60
> [<ffffffff803306de>] ? ccs_check_flags+0x1e/0x30
> [<ffffffff8032c888>] ? find_next_domain+0x98/0x970
> [<ffffffff8029c6b2>] ? handle_mm_fault+0x322/0x960
> [<ffffffff8029adb7>] ? follow_page+0x2f7/0x350
> [<ffffffff8029cdf8>] ? get_user_pages+0x108/0x450
> [<ffffffff802b7bc6>] ? ksize+0x16/0xc0
> [<ffffffff8032da76>] ? search_binary_handler_with_transition+0x406/0x4d0
> [<ffffffff802c5c0d>] ? do_execve+0x1fd/0x240
> [<ffffffff8020a2d9>] ? sys_execve+0x49/0x70
> [<ffffffff8020ca4a>] ? stub_execve+0x6a/0xc0
Inside ccs_realpath_from_dentry2(), it will take dcache_lock and vfsmount_lock
lock. But, the order of calling spin_lock(&dcache_lock); and
spin_lock(&vfsmount_lock); was reversed by AppArmor's patches.
See __d_path() in fs/dcache.c in the patch
http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/kernel/branches/rebase-to-2.6.27/PATCHES/patches/security-apparmor-2.6.27.patch?revision=276651&view=markup

The solution is to reverse the order in TOMOYO's patches.
It is solved in TOMOYO 1.6.4 . You can download it from
http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi/trunk/1.6.x/ccs-patch/?root=tomoyo&rev=1499

I responded to Mandriva's kernel maintainers, so it will be solved shortly.

Regards.
--
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/