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.