cvs commit: src/sys/compat/opensolaris/kern opensolaris_vfs.c src/sys/compat/opensolaris/sys vfs.h src/sys/contrib/opensolaris/uts/common/fs/zfs zfs_ctldir.c

Pawel Jakub Dawidek pjd at FreeBSD.org
Mon Jun 4 11:31:46 UTC 2007


pjd         2007-06-04 11:31:46 UTC

  FreeBSD src repository

  Modified files:
    sys/compat/opensolaris/kern opensolaris_vfs.c 
    sys/compat/opensolaris/sys vfs.h 
    sys/contrib/opensolaris/uts/common/fs/zfs zfs_ctldir.c 
  Log:
  Reimplement traverse() helper function:
  1. Pass locking flags to VFS_ROOT().
  2. Check v_mountedhere while the vnode is locked.
  3. Always return locked vnode on success.
  
  Change 1 fixes problem reported by Stephen M. Rumble - after
  zfs_vfsops.c,1.9 change, zfs_root() no longer locks the vnode
  unconditionally and traverse() didn't pass right lock type to
  VFS_ROOT(). The result was that kernel paniced when .zfs/ directory
  was accessed via NFS.
  
  Revision  Changes    Path
  1.6       +14 -10    src/sys/compat/opensolaris/kern/opensolaris_vfs.c
  1.2       +2 -2      src/sys/compat/opensolaris/sys/vfs.h
  1.5       +9 -10     src/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c


More information about the cvs-src mailing list