cvs commit: src/sys/kern src/sys/vfs/nfs src/sys/vfs/ufs

Matthew Dillon dillon at crater.dragonflybsd.org
Wed Oct 6 21:21:01 PDT 2004


dillon      2004/10/06 21:20:28 PDT

DragonFly src repository

  Modified files:
    sys/kern             vfs_cache.c vfs_default.c vfs_lookup.c 
                         vfs_syscalls.c 
    sys/vfs/nfs          nfs_serv.c 
    sys/vfs/ufs          ufs_vnops.c 
  Log:
  VFS messaging/interfacing work stage 7f/99: More firming up of stage 7.
  
  unlink, rmdir, rename, and whiteout removal functions use NAMEI_DELETE
  namei() lookups.  With the old API this zap'd the namecache entry before
  the system actually runs the operation.  If the operation fails we can be
  left with a broken namecache hierarchy which is not allowed in the new API.
  
  Change old API cache_lookup() semantics to *NOT* zap the namecache entry and
  add explicit zaps after calls to VOP_UNLINK(), VOP_RMDIR(), etc. to replace
  the functionality.
  
  rename() attempts to issue a NAMEI_RENAME lookup which zaps the target, but
  the same problem occurs if the target is preexisting and being overwritten.
  A similar solution is employed for renames.
  
  Revision  Changes    Path
  1.35      +51 -8     src/sys/kern/vfs_cache.c
  1.19      +5 -2      src/sys/kern/vfs_default.c
  1.18      +0 -5      src/sys/kern/vfs_lookup.c
  1.44      +8 -0      src/sys/kern/vfs_syscalls.c
  1.18      +6 -0      src/sys/vfs/nfs/nfs_serv.c
  1.22      +0 -1      src/sys/vfs/ufs/ufs_vnops.c


http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cache.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_default.c.diff?r1=1.18&r2=1.19&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_lookup.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_syscalls.c.diff?r1=1.43&r2=1.44&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_serv.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ufs_vnops.c.diff?r1=1.21&r2=1.22&f=u





More information about the Commits mailing list