summaryrefslogtreecommitdiffstats
path: root/sys/nfs
diff options
context:
space:
mode:
authordg <dg@FreeBSD.org>1995-08-01 18:51:02 +0000
committerdg <dg@FreeBSD.org>1995-08-01 18:51:02 +0000
commit21cc29328e0ec5d81f23c44eb23b19d99f7e691f (patch)
tree7e1c28d400c2c70e77cbca3654c9d1ca5443bae3 /sys/nfs
parentc93738880cf44616a99a51717df53b16bac0effb (diff)
downloadFreeBSD-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/nfs')
-rw-r--r--sys/nfs/nfs_serv.c4
-rw-r--r--sys/nfs/nfs_vnops.c6
2 files changed, 5 insertions, 5 deletions
diff --git a/sys/nfs/nfs_serv.c b/sys/nfs/nfs_serv.c
index d8659d1..8330da6 100644
--- a/sys/nfs/nfs_serv.c
+++ b/sys/nfs/nfs_serv.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_serv.c 8.3 (Berkeley) 1/12/94
- * $Id: nfs_serv.c,v 1.17 1995/06/28 07:06:50 davidg Exp $
+ * $Id: nfs_serv.c,v 1.18 1995/06/28 12:01:03 davidg Exp $
*/
/*
@@ -2026,7 +2026,7 @@ out:
if (!error) {
nqsrv_getl(vp, ND_WRITE);
nqsrv_getl(xp, ND_WRITE);
-#if defined(__NetBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
error = VOP_LINK(nd.ni_dvp, vp, &nd.ni_cnd);
#else
error = VOP_LINK(vp, nd.ni_dvp, &nd.ni_cnd);
diff --git a/sys/nfs/nfs_vnops.c b/sys/nfs/nfs_vnops.c
index 2b66340..1a08ca2 100644
--- a/sys/nfs/nfs_vnops.c
+++ b/sys/nfs/nfs_vnops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_vnops.c 8.5 (Berkeley) 2/13/94
- * $Id: nfs_vnops.c,v 1.21 1995/07/24 12:50:49 dfr Exp $
+ * $Id: nfs_vnops.c,v 1.22 1995/07/24 16:38:05 dfr Exp $
*/
/*
@@ -1646,14 +1646,14 @@ nfs_renamerpc(fdvp, fnameptr, fnamelen, tdvp, tnameptr, tnamelen, cred, proc)
int
nfs_link(ap)
struct vop_link_args /* {
- struct vnode *a_vp;
struct vnode *a_tdvp;
+ struct vnode *a_vp;
struct componentname *a_cnp;
} */ *ap;
{
#if defined(__NetBSD__)
/*
- * Since the args are reversed in the VOP_LINK() calls,
+ * Since the args are reversed in the VOP_LINK() calls,
* switch them back. Argh!
*/
register struct vnode *vp = ap->a_tdvp;
OpenPOWER on IntegriCloud