Subject: CVS commit: src/sys
To: None <source-changes@NetBSD.org>
From: Juergen Hannken-Illjes <hannken@netbsd.org>
List: source-changes
Date: 01/19/2007 14:49:14
Module Name:	src
Committed By:	hannken
Date:		Fri Jan 19 14:49:14 UTC 2007

Modified Files:
	src/sys/coda: coda_vfsops.c
	src/sys/conf: files
	src/sys/dev: fss.c
	src/sys/fs/adosfs: advfsops.c
	src/sys/fs/cd9660: cd9660_vfsops.c
	src/sys/fs/filecorefs: filecore_vfsops.c
	src/sys/fs/msdosfs: msdosfs_vfsops.c
	src/sys/fs/ntfs: ntfs_vfsops.c
	src/sys/fs/ptyfs: ptyfs_vfsops.c
	src/sys/fs/puffs: puffs_vfsops.c
	src/sys/fs/smbfs: smbfs_vfsops.c
	src/sys/fs/sysvbfs: sysvbfs.c
	src/sys/fs/tmpfs: tmpfs_vfsops.c
	src/sys/fs/udf: udf_vfsops.c
	src/sys/fs/union: union_vfsops.c
	src/sys/kern: init_main.c vfs_subr.c vfs_syscalls.c vfs_vnops.c
	src/sys/miscfs/fdesc: fdesc_vfsops.c
	src/sys/miscfs/genfs: genfs_vnops.c
	src/sys/miscfs/kernfs: kernfs_vfsops.c
	src/sys/miscfs/nullfs: null_vfsops.c
	src/sys/miscfs/overlay: overlay_vfsops.c
	src/sys/miscfs/portal: portal_vfsops.c
	src/sys/miscfs/procfs: procfs_vfsops.c
	src/sys/miscfs/umapfs: umap_vfsops.c
	src/sys/nfs: nfs_vfsops.c
	src/sys/sys: fstypes.h mount.h param.h vnode.h
	src/sys/ufs/ext2fs: ext2fs_vfsops.c
	src/sys/ufs/ffs: ffs_extern.h ffs_snapshot.c ffs_vfsops.c ffs_vnops.c
	src/sys/ufs/lfs: lfs_vfsops.c lfs_vnops.c
	src/sys/ufs/mfs: mfs_vfsops.c
	src/sys/ufs/ufs: ufs_bmap.c ufs_extern.h ufs_inode.c ufs_lookup.c
	    ufs_readwrite.c ufs_vnops.c
Added Files:
	src/sys/kern: vfs_trans.c
	src/sys/sys: fstrans.h

Log Message:
New file system suspension API to replace vn_start_write and vn_finished_write.
The suspension helpers are now put into file system specific operations.
This means every file system not supporting these helpers cannot be suspended
and therefore snapshots are no longer possible.

Implemented for file systems of type ffs.

The new API is enabled on a kernel option NEWVNGATE.  This option is
not enabled by default in any kernel config.

Presented and discussed on tech-kern with much input from
Bill Studenmund <wrstuden@netbsd.org> and YAMAMOTO Takashi <yamt@netbsd.org>.

Welcome to 4.99.9 (new vfs op vfs_suspendctl).


To generate a diff of this commit:
cvs rdiff -r1.53 -r1.54 src/sys/coda/coda_vfsops.c
cvs rdiff -r1.827 -r1.828 src/sys/conf/files
cvs rdiff -r1.29 -r1.30 src/sys/dev/fss.c
cvs rdiff -r1.32 -r1.33 src/sys/fs/adosfs/advfsops.c
cvs rdiff -r1.38 -r1.39 src/sys/fs/cd9660/cd9660_vfsops.c
cvs rdiff -r1.30 -r1.31 src/sys/fs/filecorefs/filecore_vfsops.c
cvs rdiff -r1.40 -r1.41 src/sys/fs/msdosfs/msdosfs_vfsops.c
cvs rdiff -r1.47 -r1.48 src/sys/fs/ntfs/ntfs_vfsops.c
cvs rdiff -r1.22 -r1.23 src/sys/fs/ptyfs/ptyfs_vfsops.c
cvs rdiff -r1.22 -r1.23 src/sys/fs/puffs/puffs_vfsops.c
cvs rdiff -r1.61 -r1.62 src/sys/fs/smbfs/smbfs_vfsops.c
cvs rdiff -r1.3 -r1.4 src/sys/fs/sysvbfs/sysvbfs.c
cvs rdiff -r1.17 -r1.18 src/sys/fs/tmpfs/tmpfs_vfsops.c
cvs rdiff -r1.20 -r1.21 src/sys/fs/udf/udf_vfsops.c
cvs rdiff -r1.41 -r1.42 src/sys/fs/union/union_vfsops.c
cvs rdiff -r1.287 -r1.288 src/sys/kern/init_main.c
cvs rdiff -r1.279 -r1.280 src/sys/kern/vfs_subr.c
cvs rdiff -r1.296 -r1.297 src/sys/kern/vfs_syscalls.c
cvs rdiff -r0 -r1.1 src/sys/kern/vfs_trans.c
cvs rdiff -r1.130 -r1.131 src/sys/kern/vfs_vnops.c
cvs rdiff -r1.63 -r1.64 src/sys/miscfs/fdesc/fdesc_vfsops.c
cvs rdiff -r1.142 -r1.143 src/sys/miscfs/genfs/genfs_vnops.c
cvs rdiff -r1.75 -r1.76 src/sys/miscfs/kernfs/kernfs_vfsops.c
cvs rdiff -r1.61 -r1.62 src/sys/miscfs/nullfs/null_vfsops.c
cvs rdiff -r1.36 -r1.37 src/sys/miscfs/overlay/overlay_vfsops.c
cvs rdiff -r1.59 -r1.60 src/sys/miscfs/portal/portal_vfsops.c
cvs rdiff -r1.68 -r1.69 src/sys/miscfs/procfs/procfs_vfsops.c
cvs rdiff -r1.62 -r1.63 src/sys/miscfs/umapfs/umap_vfsops.c
cvs rdiff -r1.170 -r1.171 src/sys/nfs/nfs_vfsops.c
cvs rdiff -r0 -r1.1 src/sys/sys/fstrans.h
cvs rdiff -r1.17 -r1.18 src/sys/sys/fstypes.h
cvs rdiff -r1.151 -r1.152 src/sys/sys/mount.h
cvs rdiff -r1.248 -r1.249 src/sys/sys/param.h
cvs rdiff -r1.163 -r1.164 src/sys/sys/vnode.h
cvs rdiff -r1.106 -r1.107 src/sys/ufs/ext2fs/ext2fs_vfsops.c
cvs rdiff -r1.54 -r1.55 src/sys/ufs/ffs/ffs_extern.h
cvs rdiff -r1.39 -r1.40 src/sys/ufs/ffs/ffs_snapshot.c
cvs rdiff -r1.192 -r1.193 src/sys/ufs/ffs/ffs_vfsops.c
cvs rdiff -r1.83 -r1.84 src/sys/ufs/ffs/ffs_vnops.c
cvs rdiff -r1.225 -r1.226 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -r1.196 -r1.197 src/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -r1.75 -r1.76 src/sys/ufs/mfs/mfs_vfsops.c
cvs rdiff -r1.40 -r1.41 src/sys/ufs/ufs/ufs_bmap.c
cvs rdiff -r1.49 -r1.50 src/sys/ufs/ufs/ufs_extern.h
cvs rdiff -r1.62 -r1.63 src/sys/ufs/ufs/ufs_inode.c
cvs rdiff -r1.82 -r1.83 src/sys/ufs/ufs/ufs_lookup.c
cvs rdiff -r1.72 -r1.73 src/sys/ufs/ufs/ufs_readwrite.c
cvs rdiff -r1.147 -r1.148 src/sys/ufs/ufs/ufs_vnops.c

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