summaryrefslogtreecommitdiffstats
path: root/sys/miscfs
diff options
context:
space:
mode:
authoreivind <eivind@FreeBSD.org>1999-11-13 20:58:17 +0000
committereivind <eivind@FreeBSD.org>1999-11-13 20:58:17 +0000
commit4ce73d70968875fa0c07f07e90a2bdcb84726bd6 (patch)
tree1a5eba3223a453fbc8060d31521181433ce7f3f3 /sys/miscfs
parent91b25fa7a9d94c9097d6ebf1d8ec6b1a332f8e04 (diff)
downloadFreeBSD-src-4ce73d70968875fa0c07f07e90a2bdcb84726bd6.zip
FreeBSD-src-4ce73d70968875fa0c07f07e90a2bdcb84726bd6.tar.gz
Remove WILLRELE from VOP_SYMLINK
Note: Previous commit to these files (except coda_vnops and devfs_vnops) that claimed to remove WILLRELE from VOP_RENAME actually removed it from VOP_MKNOD.
Diffstat (limited to 'sys/miscfs')
-rw-r--r--sys/miscfs/devfs/devfs_vnops.c8
-rw-r--r--sys/miscfs/union/union_vnops.c7
2 files changed, 5 insertions, 10 deletions
diff --git a/sys/miscfs/devfs/devfs_vnops.c b/sys/miscfs/devfs/devfs_vnops.c
index 96252d4..d64ce80 100644
--- a/sys/miscfs/devfs/devfs_vnops.c
+++ b/sys/miscfs/devfs/devfs_vnops.c
@@ -1069,7 +1069,6 @@ devfs_symlink(struct vop_symlink_args *ap)
char *a_target;
} */
{
- struct vnode *vp;
int error;
dn_p dnp;
union typeinfo by;
@@ -1084,12 +1083,11 @@ DBPRINT(("symlink\n"));
by.Slnk.namelen = strlen(ap->a_target);
dev_add_entry(ap->a_cnp->cn_nameptr, dnp, DEV_SLNK, &by,
NULL, NULL, &nm_p);
- if((error = devfs_dntovn(nm_p->dnp, &vp)) != 0) {
+ if((error = devfs_dntovn(nm_p->dnp, ap->a_vpp)) != 0) {
return (error);
}
- VOP_SETATTR(vp, ap->a_vap, ap->a_cnp->cn_cred, ap->a_cnp->cn_proc);
- *ap->a_vpp = NULL;
- vput(vp);
+ VOP_SETATTR(*ap->a_vpp, ap->a_vap, ap->a_cnp->cn_cred,
+ ap->a_cnp->cn_proc);
return 0;
}
diff --git a/sys/miscfs/union/union_vnops.c b/sys/miscfs/union/union_vnops.c
index a7af32b..7f9d8ee 100644
--- a/sys/miscfs/union/union_vnops.c
+++ b/sys/miscfs/union/union_vnops.c
@@ -1622,11 +1622,8 @@ union_symlink(ap)
int error = EROFS;
if ((dvp = union_lock_upper(dun, p)) != NULLVP) {
- struct vnode *vp;
-
- error = VOP_SYMLINK(dvp, &vp, cnp, ap->a_vap, ap->a_target);
- /* vp is garbage whether an error occurs or not */
- *ap->a_vpp = NULLVP;
+ error = VOP_SYMLINK(dvp, ap->a_vpp, cnp, ap->a_vap,
+ ap->a_target);
union_unlock_upper(dvp, p);
}
return (error);
OpenPOWER on IntegriCloud