Module Name: src Committed By: hannken Date: Thu Mar 30 09:16:53 UTC 2017
Modified Files: src/sys/kern: vfs_vnode.c src/sys/miscfs/genfs: genfs_vnops.c layer_extern.h layer_vfsops.c layer_vnops.c src/sys/miscfs/nullfs: null_vnops.c src/sys/miscfs/overlay: overlay_vnops.c src/sys/miscfs/umapfs: umap_vnops.c src/sys/sys: param.h vnode.h vnode_impl.h Log Message: Locking a layer vnode is racy as it may become reclaimed before calling the operation on the lower vnode. Replace vi_lock with a rw_obj and change layered file systems to share the lock with the lower vnode. Layered file systems now use genfs_lock()/_unlock/_islocked(). Welcome to 7.99.67 To generate a diff of this commit: cvs rdiff -u -r1.80 -r1.81 src/sys/kern/vfs_vnode.c cvs rdiff -u -r1.193 -r1.194 src/sys/miscfs/genfs/genfs_vnops.c cvs rdiff -u -r1.38 -r1.39 src/sys/miscfs/genfs/layer_extern.h cvs rdiff -u -r1.47 -r1.48 src/sys/miscfs/genfs/layer_vfsops.c cvs rdiff -u -r1.60 -r1.61 src/sys/miscfs/genfs/layer_vnops.c cvs rdiff -u -r1.40 -r1.41 src/sys/miscfs/nullfs/null_vnops.c cvs rdiff -u -r1.22 -r1.23 src/sys/miscfs/overlay/overlay_vnops.c cvs rdiff -u -r1.58 -r1.59 src/sys/miscfs/umapfs/umap_vnops.c cvs rdiff -u -r1.533 -r1.534 src/sys/sys/param.h cvs rdiff -u -r1.274 -r1.275 src/sys/sys/vnode.h cvs rdiff -u -r1.12 -r1.13 src/sys/sys/vnode_impl.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.