cvs commit: src/sys/kern vfs_bio.c vfs_cluster.c vfs_lock.c vfs_vopops.c src/sys/sys buf.h vfsops.h src/sys/vfs/gnu/ext2fs ext2_readwrite.c ext2_vnops.c src/sys/vfs/hpfs hpfs_vnops.c src/sys/vfs/isofs/cd9660 cd9660_lookup.c cd9660_vnops.c ...
Matthew Dillon
dillon at crater.dragonflybsd.org
Thu Jun 19 16:28:48 PDT 2008
dillon 2008/06/19 16:27:39 PDT
DragonFly src repository
Modified files:
sys/kern vfs_bio.c vfs_cluster.c vfs_lock.c
vfs_vopops.c
sys/sys buf.h vfsops.h
sys/vfs/gnu/ext2fs ext2_readwrite.c ext2_vnops.c
sys/vfs/hpfs hpfs_vnops.c
sys/vfs/isofs/cd9660 cd9660_lookup.c cd9660_vnops.c
sys/vfs/ufs ffs_rawread.c ffs_softdep.c
ufs_readwrite.c ufs_vnops.c
sys/vm vnode_pager.c
Log:
Miscellanious performance adjustments to the kernel
* Add an argument to VOP_BMAP so VFSs can discern the type of operation
the BMAP is being done for.
* Normalize the variable name denoting the blocksize to 'blksize' in
vfs_cluster.c.
* Fix a bug in the cluster code where a stale bp->b_error could wind up
getting returned when B_ERROR is not set.
* Do not B_AGE cluster bufs.
* Pass the block size to both cluster_read() and cluster_write() instead
of those routines getting the block size from
vp->v_mount->mnt_stat.f_iosize. This allows different areas of a file
to use a different block size.
* Properly initialize bp->b_bio2.bio_offset to doffset in cluster_read().
This fixes an issue where VFSs were making an extra, unnecessary call
to BMAP.
* Do not recycle vnodes on the free list until numvnodes has reached
desiredvnodes. Vnodes were being recycled when their resident page count
had dropped to zero, but this is actually too early as the VFS may cache
important information in the vnode that would otherwise require a number
of I/O's to re-acquire. This mainly helps HAMMER (whos inode lookups are
fairly expensive).
* Do not VAGE vnodes.
* Remove the minvnodes test. There is no reason not to load the vnode cache
all the way through to its max.
* buf_cmd_t visibility for the new BMAP argument.
Revision Changes Path
1.105 +8 -6 src/sys/kern/vfs_bio.c
1.38 +86 -98 src/sys/kern/vfs_cluster.c
1.29 +12 -12 src/sys/kern/vfs_lock.c
1.39 +2 -1 src/sys/kern/vfs_vopops.c
1.48 +5 -1 src/sys/sys/buf.h
1.32 +7 -3 src/sys/sys/vfsops.h
1.15 +1 -1 src/sys/vfs/gnu/ext2fs/ext2_readwrite.c
1.43 +1 -1 src/sys/vfs/gnu/ext2fs/ext2_vnops.c
1.47 +1 -1 src/sys/vfs/hpfs/hpfs_vnops.c
1.25 +4 -2 src/sys/vfs/isofs/cd9660/cd9660_lookup.c
1.40 +1 -1 src/sys/vfs/isofs/cd9660/cd9660_vnops.c
1.28 +1 -1 src/sys/vfs/ufs/ffs_rawread.c
1.56 +2 -1 src/sys/vfs/ufs/ffs_softdep.c
1.26 +2 -2 src/sys/vfs/ufs/ufs_readwrite.c
1.65 +1 -1 src/sys/vfs/ufs/ufs_vnops.c
1.43 +1 -1 src/sys/vm/vnode_pager.c
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.104&r2=1.105&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cluster.c.diff?r1=1.37&r2=1.38&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_lock.c.diff?r1=1.28&r2=1.29&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_vopops.c.diff?r1=1.38&r2=1.39&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/buf.h.diff?r1=1.47&r2=1.48&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/vfsops.h.diff?r1=1.31&r2=1.32&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/gnu/ext2fs/ext2_readwrite.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/gnu/ext2fs/ext2_vnops.c.diff?r1=1.42&r2=1.43&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hpfs/hpfs_vnops.c.diff?r1=1.46&r2=1.47&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_lookup.c.diff?r1=1.24&r2=1.25&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/isofs/cd9660/cd9660_vnops.c.diff?r1=1.39&r2=1.40&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_rawread.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_softdep.c.diff?r1=1.55&r2=1.56&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ufs_readwrite.c.diff?r1=1.25&r2=1.26&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ufs_vnops.c.diff?r1=1.64&r2=1.65&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vm/vnode_pager.c.diff?r1=1.42&r2=1.43&f=u
More information about the Commits
mailing list