--- /usr/src/sys/nfsclient/nfs_bio.c Tue Sep 25 23:08:48 2007 +++ sys/nfsclient/nfs_bio.c Sat Feb 9 14:31:09 2008 @@ -390,7 +390,7 @@ * XXX - We can make this cheaper later (by acquiring cheaper locks). * But for now, this suffices. */ - old_lock = nfs_upgrade_vnlock(vp, td); + old_lock = nfs_upgrade_vnlock(vp); mtx_lock(&np->n_mtx); if (np->n_flag & NMODIFIED) { mtx_unlock(&np->n_mtx); @@ -430,7 +430,7 @@ mtx_unlock(&np->n_mtx); } out: - nfs_downgrade_vnlock(vp, td, old_lock); + nfs_downgrade_vnlock(vp, old_lock); return error; } @@ -1306,7 +1306,7 @@ slptimeo = 0; } - old_lock = nfs_upgrade_vnlock(vp, td); + old_lock = nfs_upgrade_vnlock(vp); /* * Now, flush as required. */ @@ -1334,7 +1334,7 @@ np->n_flag &= ~NMODIFIED; mtx_unlock(&np->n_mtx); out: - nfs_downgrade_vnlock(vp, td, old_lock); + nfs_downgrade_vnlock(vp, old_lock); return error; } --- /usr/src/sys/nfsclient/nfs_subs.c Sat Jan 19 18:36:23 2008 +++ sys/nfsclient/nfs_subs.c Sat Feb 9 14:29:28 2008 @@ -480,11 +480,11 @@ } int -nfs_upgrade_vnlock(struct vnode *vp, struct thread *td) +nfs_upgrade_vnlock(struct vnode *vp) { int old_lock; - if ((old_lock = VOP_ISLOCKED(vp, td)) != LK_EXCLUSIVE) { + if ((old_lock = VOP_ISLOCKED(vp, curthread)) != LK_EXCLUSIVE) { if (old_lock == LK_SHARED) { /* Upgrade to exclusive lock, this might block */ vn_lock(vp, LK_UPGRADE | LK_RETRY); @@ -496,7 +496,7 @@ } void -nfs_downgrade_vnlock(struct vnode *vp, struct thread *td, int old_lock) +nfs_downgrade_vnlock(struct vnode *vp, int old_lock) { if (old_lock != LK_EXCLUSIVE) { if (old_lock == LK_SHARED) { --- /usr/src/sys/nfsclient/nfsnode.h Fri Mar 9 05:02:37 2007 +++ sys/nfsclient/nfsnode.h Sat Feb 9 14:30:04 2008 @@ -205,8 +205,8 @@ uint64_t *nfs4_getcookie(struct nfsnode *, off_t, int); void nfs_invaldir(struct vnode *); void nfs4_invaldir(struct vnode *); -int nfs_upgrade_vnlock(struct vnode *vp, struct thread *td); -void nfs_downgrade_vnlock(struct vnode *vp, struct thread *td, int old_lock); +int nfs_upgrade_vnlock(struct vnode *vp); +void nfs_downgrade_vnlock(struct vnode *vp, int old_lock); void nfs_printf(const char *fmt, ...); void nfs_dircookie_lock(struct nfsnode *np);