Date: Wed, 12 Nov 2003 15:48:42 -0800 (PST) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern subr_turnstile.c Message-ID: <200311122348.hACNmgKZ032190@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2003/11/12 15:48:42 PST
FreeBSD src repository
Modified files:
sys/kern subr_turnstile.c
Log:
- Close a race where a thread on another CPU could release a contested lock
and empty its turnstile while the blocking threads still pointed to the
turnstile. If the thread on the first CPU blocked on a lock owned by
one of the threads blocked on the turnstile just woken up, then the
first CPU could try to manipulate a bogus thread queue in the turnstile
during priority propagation.
- Update locking notes for ts_owner and always clear ts_owner, not just
under INVARIANTS.
Tested by: sam (1)
Revision Changes Path
1.134 +12 -4 src/sys/kern/subr_turnstile.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311122348.hACNmgKZ032190>
