Subject: CVS commit: src
To: None <source-changes@NetBSD.org>
From: Juergen Hannken-Illjes <hannken@netbsd.org>
List: source-changes
Date: 06/20/2004 18:55:59
Module Name:	src
Committed By:	hannken
Date:		Sun Jun 20 18:55:59 UTC 2004

Modified Files:
	src/share/man/man9: vfsops.9
	src/sys/dev: fss.c
	src/sys/kern: vfs_bio.c
	src/sys/sys: lwp.h
	src/sys/ufs/ffs: ffs_snapshot.c

Log Message:
- Add flag L_COWINPROGRESS to struct lwp to avoid recursion when
  doing copy-on-write.

- Change VFS_SNAPSHOT() to return the snapshot vnode locked.

- Make the IO path for copy-on-write and snapshot-read more lightweight.
  Avoids deadlocks where vn_rdwr(...READ...) has a shared lock and needs
  to copy-on-write.
  Avoids deadlocks/panics where to clean pages the copy-on-write needs
  to allocate pages for its VOP_PUTPAGES().

L_COWINPROGRESS part approved by: Jason R. Thorpe <thorpej@netbsd.org>


To generate a diff of this commit:
cvs rdiff -r1.16 -r1.17 src/share/man/man9/vfsops.9
cvs rdiff -r1.8 -r1.9 src/sys/dev/fss.c
cvs rdiff -r1.127 -r1.128 src/sys/kern/vfs_bio.c
cvs rdiff -r1.22 -r1.23 src/sys/sys/lwp.h
cvs rdiff -r1.3 -r1.4 src/sys/ufs/ffs/ffs_snapshot.c

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