NetBSD/sys/ufs/ufs
thorpej 11afd11faa Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*()
calls to ensure that the vnode lock state is as expected when the VOP
call is made.  Modify vnode_if.src to set the expected state according
to the documenting lock table for each VOP.  Modify vnode_if.sh to emit
the checks.

Notes:
- The checks are only performed if the vnode has the VLOCKSWORK bit
  set.  Some file systems (e.g. specfs) don't even bother with vnode
  locks, so of course the checks will fail.
- We can't actually run with VNODE_LOCKDEBUG because there are so many
  vnode locking problems, not the least of which is the "use SHARED for
  VOP_READ()" issue, which screws things up for the entire call chain.

Inspired by similar changes in OpenBSD, but implemented differently.
2004-09-21 03:10:35 +00:00
..
dinode.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
dir.h Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
inode.h Push atime/mtime updates even further -- into the reclaim path, so they happen 2004-08-14 14:32:04 +00:00
Makefile
quota.h First pass for some caddr_t removal and changes to get rid of it where we 2004-04-27 17:37:30 +00:00
ufs_bmap.c ufs_getlbns: 2004-09-15 09:52:49 +00:00
ufs_bswap.h Fixing age old cruft: 2004-08-15 07:19:54 +00:00
ufs_extern.h Use a pool for struct direct instead of kernel stack. 2004-06-20 18:25:49 +00:00
ufs_ihash.c Move UCB-licensed code from 4-clause to 3-clause licence. 2003-08-07 16:26:28 +00:00
ufs_inode.c Push atime/mtime updates even further -- into the reclaim path, so they happen 2004-08-14 14:32:04 +00:00
ufs_lookup.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
ufs_quota.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
ufs_readwrite.c g/c no longer used definition of fs_maxfilesize. 2004-09-10 09:36:05 +00:00
ufs_vfsops.c Use a pool for struct direct instead of kernel stack. 2004-06-20 18:25:49 +00:00
ufs_vnops.c Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*() 2004-09-21 03:10:35 +00:00
ufsmount.h Fixing age old cruft: 2004-08-15 07:19:54 +00:00