diff options
author | kato <kato@FreeBSD.org> | 1997-09-27 13:40:20 +0000 |
---|---|---|
committer | kato <kato@FreeBSD.org> | 1997-09-27 13:40:20 +0000 |
commit | fe9b86cf0b7a453c772a2756389fda91c12c3fab (patch) | |
tree | e695260038ca9665181b5b5c99ae6fa77fba443a /sys/ufs/ffs/ffs_vnops.c | |
parent | 31e1d6ad00b9d8f39549115d4ef76fbee62e9748 (diff) | |
download | FreeBSD-src-fe9b86cf0b7a453c772a2756389fda91c12c3fab.zip FreeBSD-src-fe9b86cf0b7a453c772a2756389fda91c12c3fab.tar.gz |
Clustered read and write are switched at mount-option level.
1. Clustered I/O is switched by the MNT_NOCLUSTERR and MNT_NOCLUSTERW
bits of the mnt_flag. The sysctl variables, vfs.foo.doclusterread
and vfs.foo.doclusterwrite are deleted. Only mount option can
control clustered I/O from userland.
2. When foofs_mount mounts block device, foofs_mount checks D_CLUSTERR
and D_CLUSTERW bits of the d_flags member in the block device switch
table. If D_NOCLUSTERR / D_NOCLUSTERW are set, MNT_NOCLUSTERR /
MNT_NOCLUSTERW bits will be set. In this case, MNT_NOCLUSTERR and
MNT_NOCLUSTERW cannot be cleared from userland.
3. Vnode driver disables both clustered read and write.
4. Union filesystem disables clutered write.
Reviewed by: bde
Diffstat (limited to 'sys/ufs/ffs/ffs_vnops.c')
-rw-r--r-- | sys/ufs/ffs/ffs_vnops.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c index a546fb8..084e3a9 100644 --- a/sys/ufs/ffs/ffs_vnops.c +++ b/sys/ufs/ffs/ffs_vnops.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ffs_vnops.c 8.15 (Berkeley) 5/14/95 - * $Id: ffs_vnops.c,v 1.28 1997/09/02 20:06:46 bde Exp $ + * $Id: ffs_vnops.c,v 1.29 1997/09/14 02:58:05 peter Exp $ */ #include <sys/param.h> @@ -239,17 +239,7 @@ VNODEOP_SET(ffs_vnodeop_opv_desc); VNODEOP_SET(ffs_specop_opv_desc); VNODEOP_SET(ffs_fifoop_opv_desc); -/* - * Enabling cluster read/write operations. - */ -static int ffs_doclusterread = 1; -static int ffs_doclusterwrite = 1; - SYSCTL_NODE(_vfs, MOUNT_UFS, ffs, CTLFLAG_RW, 0, "FFS filesystem"); -SYSCTL_INT(_vfs_ffs, FFS_CLUSTERREAD, doclusterread, - CTLFLAG_RW, &ffs_doclusterread, 0, ""); -SYSCTL_INT(_vfs_ffs, FFS_CLUSTERWRITE, doclusterwrite, - CTLFLAG_RW, &ffs_doclusterwrite, 0, ""); #include <ufs/ufs/ufs_readwrite.c> |