diff options
author | dg <dg@FreeBSD.org> | 1995-08-01 18:51:02 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1995-08-01 18:51:02 +0000 |
commit | 21cc29328e0ec5d81f23c44eb23b19d99f7e691f (patch) | |
tree | 7e1c28d400c2c70e77cbca3654c9d1ca5443bae3 /sys/kern/vnode_if.src | |
parent | c93738880cf44616a99a51717df53b16bac0effb (diff) | |
download | FreeBSD-src-21cc29328e0ec5d81f23c44eb23b19d99f7e691f.zip FreeBSD-src-21cc29328e0ec5d81f23c44eb23b19d99f7e691f.tar.gz |
Removed my special-case hack for VOP_LINK and fixed the problem with the
wrong vp's ops vector being used by changing the VOP_LINK's argument order.
The special-case hack doesn't go far enough and breaks the generic
bypass routine used in some non-leaf filesystems. Pointed out by Kirk
McKusick.
Diffstat (limited to 'sys/kern/vnode_if.src')
-rw-r--r-- | sys/kern/vnode_if.src | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/sys/kern/vnode_if.src b/sys/kern/vnode_if.src index 37ef15a..c5f1094 100644 --- a/sys/kern/vnode_if.src +++ b/sys/kern/vnode_if.src @@ -31,7 +31,7 @@ # SUCH DAMAGE. # # @(#)vnode_if.src 8.3 (Berkeley) 2/3/94 -# $Id: vnode_if.src,v 1.4 1995/06/28 07:06:41 davidg Exp $ +# $Id: vnode_if.src,v 1.5 1995/07/07 13:41:28 davidg Exp $ # vop_lookup { IN struct vnode *dvp; @@ -148,15 +148,11 @@ vop_remove { IN struct componentname *cnp; }; -# Gack. The generated VCALL uses the first vp which might -# not be handled by the same FS as the directory (e.g. special -# device files)...so it's special-cased. -# -#vop_link { -# IN struct vnode *vp; -# IN WILLRELE struct vnode *tdvp; -# IN struct componentname *cnp; -#}; +vop_link { + IN WILLRELE struct vnode *tdvp; + IN struct vnode *vp; + IN struct componentname *cnp; +}; vop_rename { IN WILLRELE struct vnode *fdvp; |