kernel - Performance tuning (3)
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 14 Nov 2013 19:54:09 +0000 (11:54 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 14 Nov 2013 19:54:09 +0000 (11:54 -0800)
commitb458d1abaa7a0b3892d7c071e99dd6d51090a81c
treee41e623d1be34f367c057a8b760d265cb889b6da
parentca667d3c0f7ab59da566ebc819bbad98af5a7fe1
kernel - Performance tuning (3)

* The VOP_CLOSE issues revealed a bigger issue with vn_lock().  Many
  callers do not check the return code for vn_lock() and in nearly all
  of those cases it wouldn't fail anyway due to a prior ref, but it
  creates an API issue.

* Add the LK_FAILRECLAIM flag to vn_lock().  This flag explicitly allows
  vn_lock() to fail if the vnode is undergoing reclamation.

  This fixes numerous issues, particularly when VOP_CLOSE() is called
  during a reclaim due to recent LK_UPGRADE's that we do in some VFS
  *_close() functions.

* Remove some unused LK_ defines.
28 files changed:
sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c
sys/gnu/vfs/ext2fs/ext2_lookup.c
sys/gnu/vfs/ext2fs/ext2_vnops.c
sys/gnu/vfs/ext2fs/fs.h
sys/kern/tty.c
sys/kern/tty_tty.c
sys/kern/vfs_lock.c
sys/kern/vfs_syscalls.c
sys/kern/vfs_vnops.c
sys/sys/lock.h
sys/vfs/devfs/devfs_vnops.c
sys/vfs/hpfs/hpfs.h
sys/vfs/hpfs/hpfs_vnops.c
sys/vfs/isofs/cd9660/cd9660_lookup.c
sys/vfs/isofs/cd9660/cd9660_vnops.c
sys/vfs/msdosfs/msdosfs_lookup.c
sys/vfs/msdosfs/msdosfs_vnops.c
sys/vfs/nfs/nfs_vnops.c
sys/vfs/ntfs/ntfs.h
sys/vfs/ntfs/ntfs_vnops.c
sys/vfs/nwfs/nwfs_vnops.c
sys/vfs/procfs/procfs_vnops.c
sys/vfs/smbfs/smbfs_vnops.c
sys/vfs/udf/udf_vnops.c
sys/vfs/ufs/ufs_lookup.c
sys/vfs/ufs/ufs_vnops.c
sys/vfs/union/union_subr.c
sys/vm/vm_pageout.c