Subject: CVS commit: [newlock] syssrc/sys
To: None <source-changes@netbsd.org>
From: Jason R Thorpe <thorpej@netbsd.org>
List: source-changes
Date: 03/10/2002 21:08:27
Module Name:	syssrc
Committed By:	thorpej
Date:		Sun Mar 10 19:08:26 UTC 2002

Modified Files:
	syssrc/sys/conf [newlock]: files
	syssrc/sys/kern [newlock]: init_main.c kern_exit.c kern_fork.c
	    kern_synch.c
	syssrc/sys/sys [newlock]: proc.h sched.h
Added Files:
	syssrc/sys/kern [newlock]: kern_turnstile.c

Log Message:
First cut implementation of turnstiles, a specialized sleep queue used for
kernel synchronization objects.  A detailed description of turnstiles
can be found in:

	Solaris Internals: Core Kernel Architecture, by Jim Mauro
	   and Richard McDougall, section 3.7.

Note this implementation does not yet implement priority inheritence,
nor does it currently differentiate between reader and writer queues
(though they are provided for in the API).


To generate a diff of this commit:
cvs rdiff -r1.500 -r1.500.2.1 syssrc/sys/conf/files
cvs rdiff -r1.199.2.1 -r1.199.2.2 syssrc/sys/kern/init_main.c
cvs rdiff -r1.92 -r1.92.4.1 syssrc/sys/kern/kern_exit.c
cvs rdiff -r1.88 -r1.88.4.1 syssrc/sys/kern/kern_fork.c
cvs rdiff -r1.107 -r1.107.4.1 syssrc/sys/kern/kern_synch.c
cvs rdiff -r0 -r1.1.2.1 syssrc/sys/kern/kern_turnstile.c
cvs rdiff -r1.136 -r1.136.4.1 syssrc/sys/sys/proc.h
cvs rdiff -r1.14 -r1.14.10.1 syssrc/sys/sys/sched.h

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