cvs commit: src/sys/kern vfs_syscalls.c

Ian Dowse iedowse at FreeBSD.org
Mon Aug 4 17:26:53 PDT 2003


iedowse     2003/08/04 17:26:51 PDT

  FreeBSD src repository

  Modified files:
    sys/kern             vfs_syscalls.c 
  Log:
  In the mknod(), mkfifo(), link(), symlink() and undelete() syscalls,
  use vrele() instead of vput() on the parent directory vnode returned
  by namei() in the case where it is equal to the target vnode. This
  handles namei()'s somewhat strange (but documented) behaviour of
  not locking either vnode when the two vnodes are equal and LOCKPARENT
  but not LOCKLEAF is specified.
  
  Note that since a vnode double-unlock is not currently fatal, these
  coding errors were effectively harmless.
  
  Spotted by:     Juergen Hannken-Illjes <hannken at eis.cs.tu-bs.de>
  Reviewed by:    mckusick
  
  Revision  Changes    Path
  1.329     +23 -5     src/sys/kern/vfs_syscalls.c


More information about the cvs-src mailing list