X-Git-Url: http://git.openafs.org/?p=openafs.git;a=blobdiff_plain;f=src%2Fafs%2Fafs_vcache.c;h=23600c908df2cd1050098461920bb61b41a3a9ab;hp=c0749d2a3862e5d03d94f0324b7069f60d8b6190;hb=61993cf45a648906abb865756d5a98d9c2d7cc40;hpb=e510e35b25f605090524598b6b48cd20d3102945 diff --git a/src/afs/afs_vcache.c b/src/afs/afs_vcache.c index c0749d2..23600c9 100644 --- a/src/afs/afs_vcache.c +++ b/src/afs/afs_vcache.c @@ -1742,19 +1742,15 @@ afs_GetVCache(struct VenusFid *afid, struct vrequest *areq) if (!iheldthelock) VOP_UNLOCK(vp, LK_EXCLUSIVE, current_proc()); # elif defined(AFS_FBSD_ENV) + AFS_GUNLOCK(); iheldthelock = VOP_ISLOCKED(vp); if (!iheldthelock) { - /* nosleep/sleep lock order reversal */ - int glocked = ISAFS_GLOCK(); - if (glocked) - AFS_GUNLOCK(); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); - if (glocked) - AFS_GLOCK(); } vinvalbuf(vp, V_SAVE, PINOD, 0); /* changed late in 8.0-CURRENT */ if (!iheldthelock) VOP_UNLOCK(vp, 0); + AFS_GLOCK(); # elif defined(AFS_OBSD_ENV) iheldthelock = VOP_ISLOCKED(vp, curproc); if (!iheldthelock)