schedcpu() in /sys/kern/sched_4bsd.c calls thread_lock() on thread with un-initialized td_lock

Svatopluk Kraus onwahe at gmail.com
Thu Mar 31 12:02:27 UTC 2011


Hi,

  I've got a page fault (because of NULL td_lock) in
thread_lock_flags() called from schedcpu() in /sys/kern/sched_4bsd.c
file. During process fork, new thread is linked to new process which
is linked to allproc list and both allproc_lock and new process lock
are unlocked before sched_fork() is called, where new thread td_lock
is initialized. Only PRS_NEW process status is on sentry but not
checked in schedcpu().

    Svata


More information about the freebsd-current mailing list