cvs commit: src/sys/kern vfs_bio.c vfs_lock.c vfs_subr.c

看板DFBSD_commit作者時間21年前 (2005/04/16 03:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
dillon 2005/04/15 12:08:32 PDT DragonFly src repository Modified files: sys/kern vfs_bio.c vfs_lock.c vfs_subr.c vfs_sync.c sys/sys buf.h mount.h tree.h vnode.h sys/vfs/gnu/ext2fs ext2_inode.c ext2_vfsops.c ext2_vnops.c sys/vfs/hpfs hpfs_vnops.c sys/vfs/msdosfs msdosfs_vfsops.c msdosfs_vnops.c sys/vfs/nfs nfs_bio.c nfs_nqlease.c nfs_subs.c nfs_vfsops.c nfs_vnops.c sys/vfs/nwfs nwfs_io.c nwfs_vfsops.c sys/vfs/smbfs smbfs_io.c smbfs_vfsops.c sys/vfs/specfs spec_vnops.c sys/vfs/ufs ffs_extern.h ffs_inode.c ffs_rawread.c ffs_softdep.c ffs_softdep_stub.c ffs_vfsops.c ffs_vnops.c Log: Implement Red-Black trees for the vnode clean/dirty buffer lists. Implement ranged fsyncs and adjust the syncer to use the new capability. This capability will also soon be used to replace the write_behind heuristic. Rewrite the fsync code for all VFSs to use the new APIs (generally simplifying them). Get rid of B_WRITEINPROG, it is no longer useful or needed. Get rid of B_SCANNED, it is no longer useful or needed. Rewrite the NFS 2-phase commit protocol to take advantage of the new Red-Black tree topology. Add RB_SCAN() for callback-scanning of Red-Black trees. Give RB_SCAN the ability to track the 'next' scan node and automatically fix it up if the callback directly or indirectly or through blocking indirectly deletes nodes in the tree while the scan is in progress. Remove most related loop restart conditions, they are no longer necessary. Disable filesystem background bitmap writes. This really needs to be solved a different way and the concept does not work well with red-black trees. Revision Changes Path 1.35 +19 -2 src/sys/kern/vfs_bio.c 1.6 +2 -2 src/sys/kern/vfs_lock.c 1.54 +449 -202 src/sys/kern/vfs_subr.c 1.4 +15 -14 src/sys/kern/vfs_sync.c 1.12 +9 -3 src/sys/sys/buf.h 1.18 +1 -1 src/sys/sys/mount.h 1.2 +99 -10 src/sys/sys/tree.h 1.32 +9 -2 src/sys/sys/vnode.h 1.8 +2 -2 src/sys/vfs/gnu/ext2fs/ext2_inode.c 1.27 +1 -1 src/sys/vfs/gnu/ext2fs/ext2_vfsops.c 1.20 +44 -23 src/sys/vfs/gnu/ext2fs/ext2_vnops.c 1.23 +4 -20 src/sys/vfs/hpfs/hpfs_vnops.c 1.25 +3 -3 src/sys/vfs/msdosfs/msdosfs_vfsops.c 1.24 +4 -20 src/sys/vfs/msdosfs/msdosfs_vnops.c 1.22 +0 -8 src/sys/vfs/nfs/nfs_bio.c 1.24 +1 -1 src/sys/vfs/nfs/nfs_nqlease.c 1.28 +16 -9 src/sys/vfs/nfs/nfs_subs.c 1.26 +1 -1 src/sys/vfs/nfs/nfs_vfsops.c 1.40 +234 -185 src/sys/vfs/nfs/nfs_vnops.c 1.15 +0 -2 src/sys/vfs/nwfs/nwfs_io.c 1.17 +1 -1 src/sys/vfs/nwfs/nwfs_vfsops.c 1.16 +0 -2 src/sys/vfs/smbfs/smbfs_io.c 1.19 +1 -1 src/sys/vfs/smbfs/smbfs_vfsops.c 1.24 +3 -59 src/sys/vfs/specfs/spec_vnops.c 1.9 +1 -1 src/sys/vfs/ufs/ffs_extern.h 1.14 +2 -2 src/sys/vfs/ufs/ffs_inode.c 1.10 +3 -3 src/sys/vfs/ufs/ffs_rawread.c 1.22 +164 -120 src/sys/vfs/ufs/ffs_softdep.c 1.7 +2 -3 src/sys/vfs/ufs/ffs_softdep_stub.c 1.32 +2 -2 src/sys/vfs/ufs/ffs_vfsops.c 1.13 +19 -131 src/sys/vfs/ufs/ffs_vnops.c http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.34&r2=1.35&f=u http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_lock.c.diff?r1=1.5&r2=1.6&f=u http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_subr.c.diff?r1=1.53&r2=1.54&f=u http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_sync.c.diff?r1=1.3&r2=1.4&f=u http://www.dragonflybsd.org/cvsweb/src/sys/sys/buf.h.diff?r1=1.11&r2=1.12&f=u http://www.dragonflybsd.org/cvsweb/src/sys/sys/mount.h.diff?r1=1.17&r2=1.18&f=u http://www.dragonflybsd.org/cvsweb/src/sys/sys/tree.h.diff?r1=1.1&r2=1.2&f=u http://www.dragonflybsd.org/cvsweb/src/sys/sys/vnode.h.diff?r1=1.31&r2=1.32&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/gnu/ext2fs/ext2_inode.c.diff?r1=1.7&r2=1.8&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/gnu/ext2fs/ext2_vfsops.c.diff?r1=1.26&r2=1.27&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/gnu/ext2fs/ext2_vnops.c.diff?r1=1.19&r2=1.20&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hpfs/hpfs_vnops.c.diff?r1=1.22&r2=1.23&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/msdosfs/msdosfs_vfsops.c.diff?r1=1.24&r2=1.25&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/msdosfs/msdosfs_vnops.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_bio.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_nqlease.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_subs.c.diff?r1=1.27&r2=1.28&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_vfsops.c.diff?r1=1.25&r2=1.26&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_vnops.c.diff?r1=1.39&r2=1.40&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nwfs/nwfs_io.c.diff?r1=1.14&r2=1.15&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nwfs/nwfs_vfsops.c.diff?r1=1.16&r2=1.17&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/smbfs/smbfs_io.c.diff?r1=1.15&r2=1.16&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/smbfs/smbfs_vfsops.c.diff?r1=1.18&r2=1.19&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/specfs/spec_vnops.c.diff?r1=1.23&r2=1.24&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_extern.h.diff?r1=1.8&r2=1.9&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_inode.c.diff?r1=1.13&r2=1.14&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_rawread.c.diff?r1=1.9&r2=1.10&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_softdep.c.diff?r1=1.21&r2=1.22&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_softdep_stub.c.diff?r1=1.6&r2=1.7&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_vfsops.c.diff?r1=1.31&r2=1.32&f=u http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_vnops.c.diff?r1=1.12&r2=1.13&f=u
文章代碼(AID): #12O1Qv00 (DFBSD_commit)