Messages in this thread | | | Subject | Re: BUG: kernel-2.6.27-rc5: soft lockup - CPU#X stuck for 61s! | From | Tetsuo Handa <> | Date | Sun, 31 Aug 2008 10:14:21 +0900 |
| |
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.
| |