diff options
author | se <se@FreeBSD.org> | 2003-06-20 12:15:37 +0000 |
---|---|---|
committer | se <se@FreeBSD.org> | 2003-06-20 12:15:37 +0000 |
commit | 995f0686641cf4b40d4af12d7e380b66e46cb86a (patch) | |
tree | a0cb88305e095d6833b76b157f89f77441ba1f6f | |
parent | 51f92bbd16f3838974e7285c9a9e201c6a0ab177 (diff) | |
download | FreeBSD-src-995f0686641cf4b40d4af12d7e380b66e46cb86a.zip FreeBSD-src-995f0686641cf4b40d4af12d7e380b66e46cb86a.tar.gz |
The assertions generated to test VFS locking never included checks
for vnodes reached through double indirection (i.e. **vpp). This
is worked-around by special-casing the identifier "vpp" (adding one
level of indirection).
The alternative fix mentioned in the PR had required substantial
changes to this script.
In case there are locking violations that had been hidden without
this patch, they may suddenly show up, now ...
This change does not affect code compiled without DEBUG_VFS_LOCKS.
PR: kern/46652
-rw-r--r-- | sys/tools/vnode_if.awk | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/tools/vnode_if.awk b/sys/tools/vnode_if.awk index 69bb0bf..443a321 100644 --- a/sys/tools/vnode_if.awk +++ b/sys/tools/vnode_if.awk @@ -65,6 +65,8 @@ function printh(s) {print s > hfile;} function add_debug_code(name, arg, pos) { + if (arg == "vpp") + arg = "*vpp"; if (lockdata[name, arg, pos]) { printh("\tASSERT_VI_UNLOCKED("arg", \""uname"\");"); # Add assertions for locking |