svn commit: r184216 - head/sys/kern
jhb at freebsd.org
Tue Nov 4 14:09:42 PST 2008
On Thursday 23 October 2008 09:03:31 pm David Xu wrote:
> Author: davidxu
> Date: Fri Oct 24 01:03:31 2008
> New Revision: 184216
> URL: http://svn.freebsd.org/changeset/base/184216
> partly revert revision 184199, because TDF_NEEDSIGCHK is persitent
> when thread is in kernel mode, it can cause dead loop, now unlock
> process lock after acquired sleep queue lock and thread lock to
> avoid the problem. This means TDF_NEEDSIGCHK and TDF_NEEDSUSPCHK must
> be set with process lock and thread lock being hold at same time.
You can't unlock the proc lock while holding the thread_lock(). This will
lead to deadlock due to the way that thread_lock() works. This is different
from the rules in 6.x where you could drop a mutex while holding sched_lock.
You will need to revert this.
More information about the svn-src-head