summaryrefslogtreecommitdiffstats
path: root/sys/cddl
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2008-01-13 14:44:15 +0000
committerattilio <attilio@FreeBSD.org>2008-01-13 14:44:15 +0000
commit71b7824213151e91b40ee4afa9fa7f100c90ed0b (patch)
tree880b0acaab5ef09fe469c4b041d99ff26adca8b8 /sys/cddl
parent28827547bbae974e5ca23ee55d1ba558da366885 (diff)
downloadFreeBSD-src-71b7824213151e91b40ee4afa9fa7f100c90ed0b.zip
FreeBSD-src-71b7824213151e91b40ee4afa9fa7f100c90ed0b.tar.gz
VOP_LOCK1() (and so VOP_LOCK()) and VOP_UNLOCK() are only used in
conjuction with 'thread' argument passing which is always curthread. Remove the unuseful extra-argument and pass explicitly curthread to lower layer functions, when necessary. KPI results broken by this change, which should affect several ports, so version bumping and manpage update will be further committed. Tested by: kris, pho, Diego Sardina <siarodx at gmail dot com>
Diffstat (limited to 'sys/cddl')
-rw-r--r--sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c8
-rw-r--r--sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c6
-rw-r--r--sys/cddl/compat/opensolaris/sys/vnode.h7
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c4
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c20
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c2
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c2
7 files changed, 24 insertions, 25 deletions
diff --git a/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c b/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c
index 6014c2e..efb2885 100644
--- a/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c
+++ b/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c
@@ -77,12 +77,12 @@ kobj_open_file_vnode(const char *file)
flags = FREAD;
NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_SYSSPACE, file, td);
- error = vn_open_cred(&nd, &flags, 0, td->td_ucred, NULL);
+ error = vn_open_cred(&nd, &flags, 0, curthread->td_ucred, NULL);
NDFREE(&nd, NDF_ONLY_PNBUF);
if (error != 0)
return (NULL);
/* We just unlock so we hold a reference. */
- VOP_UNLOCK(nd.ni_vp, 0, td);
+ VOP_UNLOCK(nd.ni_vp, 0);
return (nd.ni_vp);
}
@@ -125,7 +125,7 @@ kobj_get_filesize_vnode(struct _buf *file, uint64_t *size)
vn_lock(vp, LK_SHARED | LK_RETRY);
error = VOP_GETATTR(vp, &va, td->td_ucred, td);
- VOP_UNLOCK(vp, 0, td);
+ VOP_UNLOCK(vp, 0);
if (error == 0)
*size = (uint64_t)va.va_size;
return (error);
@@ -178,7 +178,7 @@ kobj_read_file_vnode(struct _buf *file, char *buf, unsigned size, unsigned off)
vn_lock(vp, LK_SHARED | LK_RETRY);
error = VOP_READ(vp, &auio, IO_UNIT | IO_SYNC, td->td_ucred);
- VOP_UNLOCK(vp, 0, td);
+ VOP_UNLOCK(vp, 0);
return (error != 0 ? -1 : size - auio.uio_resid);
}
diff --git a/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c b/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c
index 93eba51..166eeed 100644
--- a/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c
+++ b/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c
@@ -194,7 +194,7 @@ domount(kthread_t *td, vnode_t *vp, const char *fstype, char *fspath,
*/
vn_lock(vp, LK_SHARED | LK_RETRY);
mp = vfs_mount_alloc(vp, vfsp, fspath, td);
- VOP_UNLOCK(vp, 0, td);
+ VOP_UNLOCK(vp, 0);
mp->mnt_optnew = NULL;
vfs_setmntopt(mp, "from", fspec, 0);
@@ -260,7 +260,7 @@ domount(kthread_t *td, vnode_t *vp, const char *fstype, char *fspath,
panic("mount: lost mount");
mountcheckdirs(vp, mvp);
vput(mvp);
- VOP_UNLOCK(vp, 0, td);
+ VOP_UNLOCK(vp, 0);
if ((mp->mnt_flag & MNT_RDONLY) == 0)
error = vfs_allocate_syncvnode(mp);
vfs_unbusy(mp, td);
@@ -272,7 +272,7 @@ domount(kthread_t *td, vnode_t *vp, const char *fstype, char *fspath,
VI_LOCK(vp);
vp->v_iflag &= ~VI_MOUNT;
VI_UNLOCK(vp);
- VOP_UNLOCK(vp, 0, td);
+ VOP_UNLOCK(vp, 0);
vfs_unbusy(mp, td);
vfs_mount_destroy(mp);
}
diff --git a/sys/cddl/compat/opensolaris/sys/vnode.h b/sys/cddl/compat/opensolaris/sys/vnode.h
index 171b7fe..a8a261c 100644
--- a/sys/cddl/compat/opensolaris/sys/vnode.h
+++ b/sys/cddl/compat/opensolaris/sys/vnode.h
@@ -175,7 +175,7 @@ zfs_vn_open(char *pnamep, enum uio_seg seg, int filemode, int createmode,
if (error == 0) {
/* We just unlock so we hold a reference. */
VN_HOLD(nd.ni_vp);
- VOP_UNLOCK(nd.ni_vp, 0, td);
+ VOP_UNLOCK(nd.ni_vp, 0);
*vpp = nd.ni_vp;
}
return (error);
@@ -213,7 +213,6 @@ zfs_vn_rdwr(enum uio_rw rw, vnode_t *vp, caddr_t base, ssize_t len,
static __inline int
zfs_vop_fsync(vnode_t *vp, int flag, cred_t *cr)
{
- struct thread *td = curthread;
struct mount *mp;
int error, vfslocked;
@@ -223,8 +222,8 @@ zfs_vop_fsync(vnode_t *vp, int flag, cred_t *cr)
if ((error = vn_start_write(vp, &mp, V_WAIT | PCATCH)) != 0)
goto drop;
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
- error = VOP_FSYNC(vp, MNT_WAIT, td);
- VOP_UNLOCK(vp, 0, td);
+ error = VOP_FSYNC(vp, MNT_WAIT, curthread);
+ VOP_UNLOCK(vp, 0);
vn_finished_write(mp);
drop:
VFS_UNLOCK_GIANT(vfslocked);
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
index c0e9993..0c2fb02 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
@@ -391,7 +391,7 @@ zfsctl_root_lookup(vnode_t *dvp, char *nm, vnode_t **vpp, pathname_t *pnp,
if (strcmp(nm, "..") == 0) {
err = VFS_ROOT(dvp->v_vfsp, LK_EXCLUSIVE, vpp, curthread);
if (err == 0)
- VOP_UNLOCK(*vpp, 0, curthread);
+ VOP_UNLOCK(*vpp, 0);
} else {
err = gfs_dir_lookup(dvp, nm, vpp);
}
@@ -882,7 +882,7 @@ zfsctl_snapshot_inactive(ap)
VERIFY(gfs_dir_lookup(vp, "..", &dvp) == 0);
sdp = dvp->v_data;
- VOP_UNLOCK(dvp, 0, ap->a_td);
+ VOP_UNLOCK(dvp, 0);
if (!(locked = MUTEX_HELD(&sdp->sd_lock)))
mutex_enter(&sdp->sd_lock);
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
index adf838c..2be3093 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
@@ -127,10 +127,10 @@ zfs_replay_create(zfsvfs_t *zfsvfs, lr_create_t *lr, boolean_t byteswap)
default:
error = ENOTSUP;
}
- VOP_UNLOCK(ZTOV(dzp), 0, curthread);
+ VOP_UNLOCK(ZTOV(dzp), 0);
if (error == 0 && vp != NULL) {
- VOP_UNLOCK(vp, 0, curthread);
+ VOP_UNLOCK(vp, 0);
VN_RELE(vp);
}
@@ -165,7 +165,7 @@ zfs_replay_remove(zfsvfs_t *zfsvfs, lr_remove_t *lr, boolean_t byteswap)
vn_lock(ZTOV(dzp), LK_EXCLUSIVE | LK_RETRY);
error = VOP_LOOKUP(ZTOV(dzp), &vp, &cn);
if (error != 0) {
- VOP_UNLOCK(ZTOV(dzp), 0, curthread);
+ VOP_UNLOCK(ZTOV(dzp), 0);
goto fail;
}
@@ -180,7 +180,7 @@ zfs_replay_remove(zfsvfs_t *zfsvfs, lr_remove_t *lr, boolean_t byteswap)
error = ENOTSUP;
}
vput(vp);
- VOP_UNLOCK(ZTOV(dzp), 0, curthread);
+ VOP_UNLOCK(ZTOV(dzp), 0);
fail:
VN_RELE(ZTOV(dzp));
@@ -214,8 +214,8 @@ zfs_replay_link(zfsvfs_t *zfsvfs, lr_link_t *lr, boolean_t byteswap)
vn_lock(ZTOV(dzp), LK_EXCLUSIVE | LK_RETRY);
vn_lock(ZTOV(zp), LK_EXCLUSIVE | LK_RETRY);
error = VOP_LINK(ZTOV(dzp), ZTOV(zp), &cn);
- VOP_UNLOCK(ZTOV(zp), 0, curthread);
- VOP_UNLOCK(ZTOV(dzp), 0, curthread);
+ VOP_UNLOCK(ZTOV(zp), 0);
+ VOP_UNLOCK(ZTOV(dzp), 0);
VN_RELE(ZTOV(zp));
VN_RELE(ZTOV(dzp));
@@ -257,10 +257,10 @@ zfs_replay_rename(zfsvfs_t *zfsvfs, lr_rename_t *lr, boolean_t byteswap)
scn.cn_thread = td;
vn_lock(ZTOV(sdzp), LK_EXCLUSIVE | LK_RETRY);
error = VOP_LOOKUP(ZTOV(sdzp), &svp, &scn);
- VOP_UNLOCK(ZTOV(sdzp), 0, td);
+ VOP_UNLOCK(ZTOV(sdzp), 0);
if (error != 0)
goto fail;
- VOP_UNLOCK(svp, 0, td);
+ VOP_UNLOCK(svp, 0);
bzero(&tcn, sizeof(tcn));
tcn.cn_nameptr = tname;
@@ -275,7 +275,7 @@ zfs_replay_rename(zfsvfs_t *zfsvfs, lr_rename_t *lr, boolean_t byteswap)
if (error == EJUSTRETURN)
tvp = NULL;
else if (error != 0) {
- VOP_UNLOCK(ZTOV(tdzp), 0, td);
+ VOP_UNLOCK(ZTOV(tdzp), 0);
goto fail;
}
@@ -362,7 +362,7 @@ zfs_replay_setattr(zfsvfs_t *zfsvfs, lr_setattr_t *lr, boolean_t byteswap)
vp = ZTOV(zp);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
error = VOP_SETATTR(vp, &va, kcred, curthread);
- VOP_UNLOCK(vp, 0, curthread);
+ VOP_UNLOCK(vp, 0);
VN_RELE(vp);
return (error);
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
index 631b13f..8ba0461 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
@@ -1114,7 +1114,7 @@ zfs_lookup(vnode_t *dvp, char *nm, vnode_t **vpp, struct componentname *cnp,
if (cnp->cn_flags & ISDOTDOT) {
ltype = VOP_ISLOCKED(dvp, td);
- VOP_UNLOCK(dvp, 0, td);
+ VOP_UNLOCK(dvp, 0);
}
error = vn_lock(*vpp, cnp->cn_lkflags);
if (cnp->cn_flags & ISDOTDOT)
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
index 6774c8b..a201837 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
@@ -87,7 +87,7 @@ znode_pageout_func(dmu_buf_t *dbuf, void *user_ptr)
mutex_exit(&zp->z_lock);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
vrecycle(vp, curthread);
- VOP_UNLOCK(vp, 0, curthread);
+ VOP_UNLOCK(vp, 0);
vdrop(vp);
zfs_znode_free(zp);
} else {
OpenPOWER on IntegriCloud