cvs commit: src/sys/kern src/sys/vfs/nfs src/sys/vfs/nwfs src/sys/vfs/smbfs

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Oct 7 03:04:20 PDT 2004


dillon      2004/10/07 03:03:06 PDT

DragonFly src repository

  Modified files:
    sys/kern             vfs_cache.c vfs_default.c vfs_nlookup.c 
    sys/vfs/nfs          nfs_vnops.c 
    sys/vfs/nwfs         nwfs_vnops.c 
    sys/vfs/smbfs        smbfs_vnops.c 
  Log:
  VFS messaging/interfacing work stage 7g/99: More firming up of stage 7.
  
  Fix a serious bug in cache_lookup().  The original lookup code could get
  away with returning an unreferenced vnode but the new code's cache_hold()/
  cache_drop() and related functions can interact badly with an unreferenced
  vnode.  So make cache_lookup() return a referenced vnode.
  
  Detect and handle locking races in cache_nlookup() and cache_lookup().
  
  Change cache_zap() to require a locked namecache record so it doesn't
  rip data out from under cache_lookup()/cache_nlookup()/cache_resolve().
  
  Revision  Changes    Path
  1.36      +110 -75   src/sys/kern/vfs_cache.c
  1.20      +5 -1      src/sys/kern/vfs_default.c
  1.5       +0 -1      src/sys/kern/vfs_nlookup.c
  1.34      +19 -3     src/sys/vfs/nfs/nfs_vnops.c
  1.17      +3 -1      src/sys/vfs/nwfs/nwfs_vnops.c
  1.19      +3 -1      src/sys/vfs/smbfs/smbfs_vnops.c


http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cache.c.diff?r1=1.35&r2=1.36&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_default.c.diff?r1=1.19&r2=1.20&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_nlookup.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_vnops.c.diff?r1=1.33&r2=1.34&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nwfs/nwfs_vnops.c.diff?r1=1.16&r2=1.17&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/smbfs/smbfs_vnops.c.diff?r1=1.18&r2=1.19&f=u





More information about the Commits mailing list