freebsd-skq/sbin/fsck_ffs
Xin LI a16baf37b9 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
MFC After:	1 week
2005-02-20 08:02:15 +00:00
..
SMM.doc Remove advertising clause from University of California Regent's license, 2004-04-09 19:58:40 +00:00
dir.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
ea.c Use __FBSDID() to quiet GCC 3.3 warnings. 2003-05-03 18:41:59 +00:00
fsck_ffs.8 Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
fsck.h The recomputation of file system summary at mount time can be a 2005-02-20 08:02:15 +00:00
fsutil.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
inode.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
main.c Sync program's usage() with manpage's SYNOPSIS. 2005-02-10 09:19:34 +00:00
Makefile Move back to WARNS=2 2004-09-01 08:26:39 +00:00
pass1.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
pass1b.c The got_siginfo = 0 should have been got_sigalarm=0 to match the other 2004-10-10 06:37:56 +00:00
pass2.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
pass3.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
pass4.c Eliminate linked list used to track inodes with an initial link 2004-10-08 20:44:47 +00:00
pass5.c The recomputation of file system summary at mount time can be a 2005-02-20 08:02:15 +00:00
setup.c Generalize the UFS bad magic value used to determine when a filesystem 2004-08-19 11:09:13 +00:00
utilities.c Remove advertising clause from University of California Regent's license, 2004-04-09 19:58:40 +00:00