diff options
author | Grigoriy Orlov <gluk@cvs.openbsd.org> | 2001-04-06 20:43:32 +0000 |
---|---|---|
committer | Grigoriy Orlov <gluk@cvs.openbsd.org> | 2001-04-06 20:43:32 +0000 |
commit | 65a1b707e2d081bfbfe6c798edb82c41ab8be403 (patch) | |
tree | 1c3cacd9807632a3a7a61198f0fd424cd3122231 /sys/ufs/ffs/fs.h | |
parent | f6bdf17af468a62e07c78cc9982c18424d050403 (diff) |
Replace FFS directory preference algorithm(dirpref) by new one.
It allocates directory inode in the same cylinder group as a parent
directory in. This speedup file/directory intensive operations on
a big file systems in times.
Don't forget to recompile fsck_ffs with updated fs.h or you will get
"VALUES IN SUPER BLOCK DISAGREE WITH THOSE IN FIRST ALTERNATE" at
the next boot. In any case you can ignore this error safely.
Requested by deraadt@
Diffstat (limited to 'sys/ufs/ffs/fs.h')
-rw-r--r-- | sys/ufs/ffs/fs.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/ufs/ffs/fs.h b/sys/ufs/ffs/fs.h index e280f92f256..683a87af728 100644 --- a/sys/ufs/ffs/fs.h +++ b/sys/ufs/ffs/fs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: fs.h,v 1.8 1998/11/29 00:45:30 art Exp $ */ +/* $OpenBSD: fs.h,v 1.9 2001/04/06 20:43:30 gluk Exp $ */ /* $NetBSD: fs.h,v 1.6 1995/04/12 21:21:02 mycroft Exp $ */ /* @@ -229,7 +229,11 @@ struct fs { int32_t *fs_maxcluster; /* max cluster in each cyl group */ int32_t fs_cpc; /* cyl per cycle in postbl */ int16_t fs_opostbl[16][8]; /* old rotation block list head */ - int32_t fs_sparecon[49]; /* reserved for future constants */ + int32_t fs_sparecon[46]; /* reserved for future constants */ +/* these fields used in dirpref routine for optimization */ + u_int8_t *fs_contigdirs; /* # of contiguously allocated dirs */ + int32_t fs_avgfilesize; /* expected average file size */ + int32_t fs_avgfpdir; /* expected # of files per directory */ time_t fs_fscktime; /* last time fsck(8)ed */ int32_t fs_contigsumsize; /* size of cluster summary array */ int32_t fs_maxsymlinklen; /* max length of an internal symlink */ |