Subject: CVS commit: syssrc
To: None <source-changes@netbsd.org>
From: Manuel BOUYER <bouyer@netbsd.org>
List: source-changes
Date: 09/06/2000 11:41:43
Module Name:	syssrc
Committed By:	bouyer
Date:		Wed Sep  6 08:41:43 UTC 2000

Modified Files:
	syssrc/sys/kern [netbsd-1-5]: kern_synch.c vfs_subr.c
	syssrc/sys/sys [netbsd-1-5]: proc.h

Log Message:
Pull up (approved by thorpej):
sys/proc.h 1.104 -> 1.105
sys/kern/kern_synch.c 1.93 -> 1.94 (via patch to remove SMPism)
sys/kern/vfs_subr.c 1.137 -> 1.138

Add a suspendsched() fuctions, which stops scheduling of users processes
(exept curproc) by putting all SRUN and SSLEEP non-P_SYSTEM processes
in SSTOP state.

In vfs_shutdown() use suspendsched() suspend scheduling, and use tsleep()
instead of DELAY to give kernel threads a chance to run (needed to flush
buffers to a RAID disk). Also, keep trying flushing buffers when the number of
dirty buffers decreases (20 rounds may not be enouth for a very large buffer
cache).


To generate a diff of this commit:
cvs rdiff -r1.78.2.2 -r1.78.2.3 syssrc/sys/kern/kern_synch.c
cvs rdiff -r1.128.2.3 -r1.128.2.4 syssrc/sys/kern/vfs_subr.c
cvs rdiff -r1.98.2.1 -r1.98.2.2 syssrc/sys/sys/proc.h

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