cvs commit: src/sys/ufs/ffs ffs_balloc.c ffs_extern.h ffs_inode.c ffs_rawread.c ffs_snapshot.c ffs_softdep.c ffs_vfsops.c ffs_vnops.c

Poul-Henning Kamp phk at FreeBSD.org
Tue Feb 8 08:25:51 PST 2005


phk         2005-02-08 16:25:50 UTC

  FreeBSD src repository

  Modified files:
    sys/ufs/ffs          ffs_balloc.c ffs_extern.h ffs_inode.c 
                         ffs_rawread.c ffs_snapshot.c 
                         ffs_softdep.c ffs_vfsops.c ffs_vnops.c 
  Log:
  For snapshots we need all VOP_LOCKs to be exclusive.
  
  The "business class upgrade" was implemented in UFS's VOP_LOCK
  implementation ufs_lock() which is the wrong layer, so move it to
  ffs_lock().
  
  Also, as long as we have not abandonned advanced vfs-stacking we
  should not preclude it from happening: instead of implementing a
  copy locally, use the VOP_LOCK_APV(&ufs) to correctly arrive at
  vop_stdlock() at the bottom.
  
  Revision  Changes    Path
  1.49      +4 -6      src/sys/ufs/ffs/ffs_balloc.c
  1.64      +2 -1      src/sys/ufs/ffs/ffs_extern.h
  1.100     +3 -3      src/sys/ufs/ffs/ffs_inode.c
  1.22      +2 -1      src/sys/ufs/ffs/ffs_rawread.c
  1.95      +9 -9      src/sys/ufs/ffs/ffs_snapshot.c
  1.168     +9 -17     src/sys/ufs/ffs/ffs_softdep.c
  1.273     +1 -2      src/sys/ufs/ffs/ffs_vfsops.c
  1.150     +12 -10    src/sys/ufs/ffs/ffs_vnops.c


More information about the cvs-all mailing list