cvs commit: src/sys/ufs/ffs ffs_vfsops.c

Jeff Roberson jeff at FreeBSD.org
Sun Oct 5 00:16:46 PDT 2003


jeff        2003/10/05 00:16:45 PDT

  FreeBSD src repository

  Modified files:
    sys/ufs/ffs          ffs_vfsops.c 
  Log:
   - Check the XLOCK before inspecting v_data.
   - Slightly rewrite the fsync loop to be more lock friendly.  We must
     acquire the vnode interlock before dropping the mnt lock.  We must
     also check XLOCK to prevent vclean() races.
   - Use LK_INTERLOCK in the vget() in ffs_sync to further prevent vclean()
     races.
   - Use a local variable to store the results of the nvp == TAILQ_NEXT
     test so that we do not access the vp after we've vrele()d it.
   - Add an XXX comment about UFS_UPDATE() not being protected by any lock
     here.  I suspect that it should need the VOP lock.
  
  Revision  Changes    Path
  1.218     +25 -9     src/sys/ufs/ffs/ffs_vfsops.c


More information about the cvs-src mailing list