linux syscall get_robust_list causes panic

Mateusz Guzik mjguzik at gmail.com
Sun Jun 14 15:44:29 UTC 2009


On Sun, Jun 14, 2009 at 04:27:45PM +0200, Alexander Best wrote:
> hi there,
> 
> i tried to run the latest release (20090531) of the linux test project (ltp)
> with emulators/linux_dist-gentoo-stage3. however the kernel panics after ltp's
> get_robust_list(2) test. set_robust_list(2) passes without any problems.
> 
> i've attached a screenshot of the panic and the source which is causing the
> panic. you won't be able to compile it without ltp however. after installing
> and compiling ltp the source and the executable can be found in
> "/usr/local/gentoo-stage3/ltp-full-20090531/testcases/kernel/syscalls/get_robust_list".
> simply running the
> "/usr/local/gentoo-stage3/ltp-full-20090531/testcases/kernel/syscalls/get_robust_list/get_robust_list01"
> executable results in a panic.
> 
> unfortunately i cannot supply a complete bt, because i only own a usb keyboard
> which doesn't respond after the panic. actually i'm a bit surprised the
> debugger was started, because i have "KDB_UNATTENDED" in my kernel conf. any
> reason the machine doesn't reboot and save the dump to /var/crash/vmcore.*?
> 
> i'm running r193846 (CURRENT).
> 
> cheers.

Just a guess: it looks like linux_get_robust_list can return EPERM
without unlocking process found by pfind. Can you add PROC_UNLOCK(p)
before that return and check it? Unfortunately I can't do that right now.

-- 
Mateusz Guzik <mjguzik at gmail.com>


More information about the freebsd-current mailing list