Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: syssrc



Module Name:    syssrc
Committed By:   perseant
Date:           Sat May 13 23:43:17 UTC 2000

Modified Files:
        syssrc/sys/kern: vnode_if.c vnode_if.src
        syssrc/sys/miscfs/genfs: genfs_vnops.c
        syssrc/sys/msdosfs: msdosfs_denode.c msdosfs_vnops.c
        syssrc/sys/sys: vnode.h vnode_if.h
        syssrc/sys/ufs/ext2fs: ext2fs_inode.c ext2fs_readwrite.c ext2fs_vnops.c
        syssrc/sys/ufs/ffs: ffs_inode.c ffs_vnops.c
        syssrc/sys/ufs/lfs: lfs.h lfs_inode.c lfs_vnops.c
        syssrc/sys/ufs/ufs: ufs_lookup.c ufs_readwrite.c ufs_vnops.c

Log Message:
Change the sementics of the last parameter from a boolean ("waitfor") to
a set of flags ("flags").  Two flags are defined, UPDATE_WAIT and
UPDATE_DIROP.

Under the old semantics, VOP_UPDATE would block if waitfor were set,
under the assumption that directory operations should be done
synchronously.  At least LFS and FFS+softdep do not make this
assumption; FFS+softdep got around the problem by enclosing all relevant
calls to VOP_UPDATE in a "if(!DOINGSOFTDEP(vp))", while LFS simply
ignored waitfor, one of the reasons why NFS-serving an LFS filesystem
did not work properly.

Under the new semantics, the UPDATE_DIROP flag is a hint to the
fs-specific update routine that the call comes from a dirop routine, and
should be wait for, or not, accordingly.

Closes PR#8996.


To generate a diff of this commit:
cvs rdiff -r1.21 -r1.22 syssrc/sys/kern/vnode_if.c
cvs rdiff -r1.23 -r1.24 syssrc/sys/kern/vnode_if.src
cvs rdiff -r1.16 -r1.17 syssrc/sys/miscfs/genfs/genfs_vnops.c
cvs rdiff -r1.42 -r1.43 syssrc/sys/msdosfs/msdosfs_denode.c
cvs rdiff -r1.96 -r1.97 syssrc/sys/msdosfs/msdosfs_vnops.c
cvs rdiff -r1.74 -r1.75 syssrc/sys/sys/vnode.h
cvs rdiff -r1.21 -r1.22 syssrc/sys/sys/vnode_if.h
cvs rdiff -r1.14 -r1.15 syssrc/sys/ufs/ext2fs/ext2fs_inode.c
cvs rdiff -r1.11 -r1.12 syssrc/sys/ufs/ext2fs/ext2fs_readwrite.c
cvs rdiff -r1.25 -r1.26 syssrc/sys/ufs/ext2fs/ext2fs_vnops.c
cvs rdiff -r1.30 -r1.31 syssrc/sys/ufs/ffs/ffs_inode.c
cvs rdiff -r1.26 -r1.27 syssrc/sys/ufs/ffs/ffs_vnops.c
cvs rdiff -r1.21 -r1.22 syssrc/sys/ufs/lfs/lfs.h
cvs rdiff -r1.35 -r1.36 syssrc/sys/ufs/lfs/lfs_inode.c \
    syssrc/sys/ufs/lfs/lfs_vnops.c
cvs rdiff -r1.30 -r1.31 syssrc/sys/ufs/ufs/ufs_lookup.c
cvs rdiff -r1.24 -r1.25 syssrc/sys/ufs/ufs/ufs_readwrite.c
cvs rdiff -r1.65 -r1.66 syssrc/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.




Home | Main Index | Thread Index | Old Index