cvs commit: src/sys/vfs/hammer hammer_flusher.c hammer_object.c hammer_pfs.c hammer_transaction.c hammer_vnops.c

Matthew Dillon dillon at
Fri Jul 18 21:50:42 PDT 2008

dillon      2008/07/18 21:49:40 PDT

DragonFly src repository

  Modified files:
    sys/vfs/hammer       hammer_flusher.c hammer_object.c 
                         hammer_pfs.c hammer_transaction.c 
  HAMMER 64/Many: NFS, cross-device links, synctid
  * Check for cross-device links and cross-PFS links in the link and
    rename code.
  * Update a directory's mtime when a file is created or deleted within it.
    (good idea anyway, also allows NFS clients to properly invalidate their
    directory caches).
  * Only lock the PFS sync-end-tid field when the HAMMER_PFSD_SLAVE flag is
    not set.
  * Clear ocp->dip->objid_cache when cleaning out the object cache.
  * PFS softlinks in the form @@PFS%05d are auto-expanded by HAMMER's
    readlink() to include a snapshot transaction id.  Adjust getattr
    to properly set va_size (aka stat->st_size) to the length of the
    expanded version.  This fixes NFS confusion and allows PFS's to be
    mounted via their softlinks.
  * Fix another issue where the synctid ioctl would still sometimes stall
    until the next filesystem sync.
  Reported-by: YONETANI Tomokazu <qhwt+dfly at>
  Revision  Changes    Path
  1.44      +9 -2      src/sys/vfs/hammer/hammer_flusher.c
  1.92      +6 -0      src/sys/vfs/hammer/hammer_object.c
  1.3       +1 -1      src/sys/vfs/hammer/hammer_pfs.c
  1.23      +2 -0      src/sys/vfs/hammer/hammer_transaction.c
  1.93      +28 -0     src/sys/vfs/hammer/hammer_vnops.c

More information about the Commits mailing list