freebsd-nq/sys/conf
Ian Dowse 9b5ad47fb7 Bring in dirhash, a simple hash-based lookup optimisation for large
directories. When enabled via "options UFS_DIRHASH", in-core hash
arrays are maintained for large directories. These allow all
directory operations to take place quickly instead of requiring
long linear searches. For now anyway, dirhash is not enabled by
default.

The in-core hash arrays have a memory requirement that is approximately
half the size of the size of the on-disk directory file. A number
of new sysctl variables allow control over which directories get
hashed and over the maximum amount of memory that dirhash will use:

  vfs.ufs.dirhash_minsize
    The minimum on-disk directory size for which hashing should be
    used. The default is 2560 (2.5k).

  vfs.ufs.dirhash_maxmem
    The system-wide maximum total memory to be used by dirhash data
    structures. The default is 2097152 (2MB).

The current amount of memory being used by dirhash is visible
through the read-only sysctl variable vfs.ufs.dirhash_maxmem.
Finally, some extra sanity checks that are enabled by default, but
which may have an impact on performance, can be disabled by setting
vfs.ufs.dirhash_docheck to 0.

Discussed on: -fs, -hackers
2001-07-10 21:21:29 +00:00
..
defines
files Bring in dirhash, a simple hash-based lookup optimisation for large 2001-07-10 21:21:29 +00:00
files.alpha Hints overhaul: 2001-06-12 09:40:04 +00:00
files.i386 - Don't overwrite inb, inw and outw. 2001-07-04 13:00:21 +00:00
files.ia64 Hints overhaul: 2001-06-12 09:40:04 +00:00
files.pc98 - Don't overwrite inb, inw and outw. 2001-07-04 13:00:21 +00:00
files.powerpc Add -msoft-float to COPTS to stop GCC attempting to be "smart" and using 2001-06-27 12:10:25 +00:00
kern.mk Add section for building ia64 kernels. 2000-10-16 20:04:52 +00:00
kmod.mk With this commit, I hereby pronounce gensetdefs past its use-by date. 2001-06-13 10:58:39 +00:00
ldscript.alpha Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.amd64 Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.i386 Add $FreeBSD$ 2000-01-11 15:35:16 +00:00
ldscript.ia64 Change the kernel layout to match Linux/ia64 more closely. This prevents 2001-03-09 13:47:25 +00:00
ldscript.powerpc The final commit for the first phase of PowerPC support. 2001-06-17 09:39:44 +00:00
majors Add a couple of major numbers for ICP Vortex (who were acquired by Intel, 2001-07-02 21:09:05 +00:00
Makefile.alpha Bump config version. 2001-07-02 05:36:32 +00:00
Makefile.i386 Bump config version. 2001-07-02 05:36:32 +00:00
Makefile.ia64 Bump config version. 2001-07-02 05:36:32 +00:00
Makefile.pc98 Bump config version. 2001-07-02 05:36:32 +00:00
Makefile.powerpc Bump config version. 2001-07-02 05:36:32 +00:00
newvers.sh setlocale(3) has been fixed to match POSIX standard: 2001-03-02 16:52:14 +00:00
NOTES Bring in dirhash, a simple hash-based lookup optimisation for large 2001-07-10 21:21:29 +00:00
options Bring in dirhash, a simple hash-based lookup optimisation for large 2001-07-10 21:21:29 +00:00
options.alpha Turn on preemption by default on the alpha arch. This also removes the 2001-05-01 00:19:24 +00:00
options.i386 Hints overhaul: 2001-06-12 09:40:04 +00:00
options.ia64 Allow the size of the SSC memory disk used with the SKI emulator to be 2001-04-30 21:26:43 +00:00
options.pc98 Hints overhaul: 2001-06-12 09:40:04 +00:00
options.powerpc The final commit for the first phase of PowerPC support. 2001-06-17 09:39:44 +00:00
param.c Introduce numerous SMP friendly changes to the mbuf allocator. Namely, 2001-06-22 06:35:32 +00:00
systags.sh $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00