cvs commit: src/sbin/fsck_ffs fsck.h pass5.c src/sys/ufs/ffs ffs_alloc.c ffs_softdep.c fs.h

Xin LI delphij at FreeBSD.org
Mon Feb 28 16:04:53 GMT 2005


delphij     2005-02-28 16:04:53 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_5)
    sbin/fsck_ffs        fsck.h pass5.c 
    sys/ufs/ffs          ffs_alloc.c ffs_softdep.c fs.h 
  Log:
  MFC: Transferr the responsibility of recomputation of the superblock
  summary to background fsck.  This will improve startup speed when
  mounting a large volume.
  
  Original commit log:
  
    The recomputation of file system summary at mount time can be a
    very slow process, especially for large file systems that is just
    recovered from a crash.
  
    Since the summary is already re-sync'ed every 30 second, we will
    not lag behind too much after a crash.  With this consideration
    in mind, it is more reasonable to transfer the responsibility to
    background fsck, to reduce the delay after a crash.
  
    Add a new sysctl variable, vfs.ffs.compute_summary_at_mount, to
    control this behavior.  When set to nonzero, we will get the
    "old" behavior, that the summary is computed immediately at mount
    time.
  
    Add five new sysctl variables to adjust ndir, nbfree, nifree,
    nffree and numclusters respectively.  Teach fsck_ffs about these
    API, however, intentionally not to check the existence, since
    kernels without these sysctls must have recomputed the summary
    and hence no adjustments are necessary.
  
    This change has eliminated the usual tens of minutes of delay of
    mounting large dirty volumes.
  
    Reviewed by:    mckusick
  
    Revision  Changes    Path
    1.35      +5 -0      src/sbin/fsck_ffs/fsck.h
    1.41      +55 -0     src/sbin/fsck_ffs/pass5.c
    1.132     +68 -1     src/sys/ufs/ffs/ffs_alloc.c
    1.176     +12 -3     src/sys/ufs/ffs/ffs_softdep.c
    1.48      +6 -1      src/sys/ufs/ffs/fs.h
  
  Revision   Changes    Path
  1.31.2.4   +5 -0      src/sbin/fsck_ffs/fsck.h
  1.39.2.2   +55 -0     src/sbin/fsck_ffs/pass5.c
  1.123.2.4  +68 -1     src/sys/ufs/ffs/ffs_alloc.c
  1.156.2.2  +12 -3     src/sys/ufs/ffs/ffs_softdep.c
  1.43.2.3   +6 -1      src/sys/ufs/ffs/fs.h


More information about the cvs-all mailing list