Subject: CVS commit: [vmlocking] src/sys
To: None <source-changes@NetBSD.org>
From: Andrew Doran <ad@netbsd.org>
List: source-changes
Date: 04/10/2007 18:34:05
Module Name:	src
Committed By:	ad
Date:		Tue Apr 10 18:34:05 UTC 2007

Modified Files:
	src/sys/kern [vmlocking]: kern_condvar.c kern_mutex.c kern_rwlock.c
	    kern_sleepq.c kern_synch.c kern_turnstile.c sys_lwp.c
	src/sys/sys [vmlocking]: sleepq.h

Log Message:
- Ensure that that LWPs going to sleep are on the sleep queue and so
  have their syncobj pointer updated, so that calls to turnstile_wakeup
  will have the correct locks held when adjusting the current LWP's
  priority. Avoids another deadlock.
- Assume that LWPs blocked on a turnstile will never be swapped out.
- LWPs blocking on a turnstile must have kernel priority, as they
  are consuming kernel resources.


To generate a diff of this commit:
cvs rdiff -r1.5.2.2 -r1.5.2.3 src/sys/kern/kern_condvar.c
cvs rdiff -r1.11.2.4 -r1.11.2.5 src/sys/kern/kern_mutex.c
cvs rdiff -r1.6.2.2 -r1.6.2.3 src/sys/kern/kern_rwlock.c \
    src/sys/kern/kern_turnstile.c
cvs rdiff -r1.7.2.3 -r1.7.2.4 src/sys/kern/kern_sleepq.c
cvs rdiff -r1.186.2.4 -r1.186.2.5 src/sys/kern/kern_synch.c
cvs rdiff -r1.12.2.2 -r1.12.2.3 src/sys/kern/sys_lwp.c
cvs rdiff -r1.5.2.1 -r1.5.2.2 src/sys/sys/sleepq.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.