x86_64 kernel - Increase buffer cache and vnode resources, and more.
authorMatthew Dillon <dillon@apollo.backplane.com>
Sat, 6 Feb 2010 17:13:11 +0000 (09:13 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Sat, 6 Feb 2010 17:20:35 +0000 (09:20 -0800)
commit7c457ac840f7cd3cd8afc0a436867568241038c2
treef38642b0ee9d093858f916c80e1f4825fd4e1025
parent00a3fdca11527a9e70b79270e03d979267907ca4
x86_64 kernel - Increase buffer cache and vnode resources, and more.

* Increase the maximum buffer cache from 200M to 400M.  Note that
  the buffer cache is backed by the VM page cache which is unlimited.

* Use size_t for kmalloc() tracking

* Allow 0 to be specified for kmalloc_raise_limit() which makes a
  kmalloc pool unlimited.

* Adjust the kern.maxvnodes autocalculation for both i386 and x86_64.
  i386 boxes with maximum memory will get a slightly lower vnode
  limit while x86_64 boxes will get a dramatically higher vnode limit.

* Remove kmalloc pool limits for vnodes, for HAMMER inodes, and
  for UFS inodes.  These pools track maxvnodes and do not require
  limits.

  This fixes occassional kmalloc assertions and allows the sysop to
  raise kern.maxvnodes on a running system.
sys/cpu/x86_64/include/param.h
sys/kern/kern_slaballoc.c
sys/kern/vfs_lock.c
sys/kern/vfs_subr.c
sys/sys/malloc.h
sys/vfs/hammer/hammer_vfsops.c
sys/vfs/ufs/ffs_vfsops.c