Date: Tue, 4 Nov 2008 17:07:25 -0500 From: John Baldwin <jhb@freebsd.org> To: David Xu <davidxu@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r184216 - head/sys/kern Message-ID: <200811041707.26052.jhb@freebsd.org> In-Reply-To: <200810240103.m9O13V7f071075@svn.freebsd.org> References: <200810240103.m9O13V7f071075@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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 > > Log: > 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. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811041707.26052.jhb>