diff options
author | attilio <attilio@FreeBSD.org> | 2008-01-10 01:10:58 +0000 |
---|---|---|
committer | attilio <attilio@FreeBSD.org> | 2008-01-10 01:10:58 +0000 |
commit | 18d0a0dd51c7995ce9e549616f78ef724096b1bd (patch) | |
tree | c4e28d990eaa525916ab09f2bd1d9c6ddf2c8dea /sys/nfsclient | |
parent | 8df9c26bfdf7538c15226c902c07a0fe350ace36 (diff) | |
download | FreeBSD-src-18d0a0dd51c7995ce9e549616f78ef724096b1bd.zip FreeBSD-src-18d0a0dd51c7995ce9e549616f78ef724096b1bd.tar.gz |
vn_lock() is currently only used with the 'curthread' passed as argument.
Remove this argument and pass curthread directly to underlying
VOP_LOCK1() VFS method. This modify makes the code cleaner and in
particular remove an annoying dependence helping next lockmgr() cleanup.
KPI results, obviously, changed.
Manpage and FreeBSD_version will be updated through further commits.
As a side note, would be valuable to say that next commits will address
a similar cleanup about VFS methods, in particular vop_lock1 and
vop_unlock.
Tested by: Diego Sardina <siarodx at gmail dot com>,
Andrea Di Pasquale <whyx dot it at gmail dot com>
Diffstat (limited to 'sys/nfsclient')
-rw-r--r-- | sys/nfsclient/nfs_subs.c | 6 | ||||
-rw-r--r-- | sys/nfsclient/nfs_vnops.c | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/sys/nfsclient/nfs_subs.c b/sys/nfsclient/nfs_subs.c index 1c78599..d6c7d29 100644 --- a/sys/nfsclient/nfs_subs.c +++ b/sys/nfsclient/nfs_subs.c @@ -487,9 +487,9 @@ nfs_upgrade_vnlock(struct vnode *vp, struct thread *td) if ((old_lock = VOP_ISLOCKED(vp, td)) != LK_EXCLUSIVE) { if (old_lock == LK_SHARED) { /* Upgrade to exclusive lock, this might block */ - vn_lock(vp, LK_UPGRADE | LK_RETRY, td); + vn_lock(vp, LK_UPGRADE | LK_RETRY); } else { - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); } } return old_lock; @@ -501,7 +501,7 @@ nfs_downgrade_vnlock(struct vnode *vp, struct thread *td, int old_lock) if (old_lock != LK_EXCLUSIVE) { if (old_lock == LK_SHARED) { /* Downgrade from exclusive lock, this might block */ - vn_lock(vp, LK_DOWNGRADE, td); + vn_lock(vp, LK_DOWNGRADE); } else { VOP_UNLOCK(vp, 0, td); } diff --git a/sys/nfsclient/nfs_vnops.c b/sys/nfsclient/nfs_vnops.c index 0900290..358b29a 100644 --- a/sys/nfsclient/nfs_vnops.c +++ b/sys/nfsclient/nfs_vnops.c @@ -932,7 +932,7 @@ nfs_lookup(struct vop_lookup_args *ap) if (flags & ISDOTDOT) { VOP_UNLOCK(dvp, 0, td); error = nfs_nget(dvp->v_mount, fhp, fhsize, &np, cnp->cn_lkflags); - vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY, td); + vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY); if (error) return (error); newvp = NFSTOV(np); @@ -1605,7 +1605,7 @@ nfs_rename(struct vop_rename_args *ap) error = 0; goto out; } - if ((error = vn_lock(fvp, LK_EXCLUSIVE, fcnp->cn_thread)) != 0) + if ((error = vn_lock(fvp, LK_EXCLUSIVE)) != 0) goto out; /* |