HAMER VFS - Cache additional b-tree nodes in directory.
authorMatthew Dillon <dillon@apollo.backplane.com>
Sat, 20 Jun 2009 23:53:21 +0000 (16:53 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Sat, 20 Jun 2009 23:53:21 +0000 (16:53 -0700)
commit39d8fd636004057de2f4039d0c527e8a5194fb08
tree93b412bacc2489c6fb82b729fbec458ed3c9aa77
parentdf2ccbac56a7e11715c25f2c1617dafb6db040b1
HAMER VFS - Cache additional b-tree nodes in directory.

* Cache inode record cursors in the directory at dip->cache[2] to reduce
  cpu overhead when iterating a directory.

* Cache file object record cursors in the file's governing directory at
  dip->cache[3] after reading the last data record in a file, to reduce
  cpu overhead when chain-reading files.

* Also add vfs.hammer.stats_btree_root_iterations, a counter which
  is incremented whenever a B-Tree search is initiated from the root
  node.
sys/vfs/hammer/hammer.h
sys/vfs/hammer/hammer_cursor.c
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_vfsops.c
sys/vfs/hammer/hammer_vnops.c