no-clid-for-bsd-20060313
authorJim Rees <rees@umich.edu>
Mon, 13 Mar 2006 19:18:07 +0000 (19:18 +0000)
committerJim Rees <rees@umich.edu>
Mon, 13 Mar 2006 19:18:07 +0000 (19:18 +0000)
Back out rev 1.28 for BSD.
On BSD, clid is not necessarily a pid.
Passing it to HandleFlock results in client hangs.

src/afs/VNOPS/afs_vnop_flock.c
src/afs/VNOPS/afs_vnop_remove.c

index 55df7cd..6222e45 100644 (file)
@@ -569,7 +569,7 @@ int afs_lockctl(struct vcache * avc, struct AFS_FLOCK * af, int acmd,
 #endif
        ) && code != LOCK_UN)
        code |= LOCK_NB;        /* non-blocking, s.v.p. */
-#if    defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
+#if    defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV)
     code = HandleFlock(avc, code, &treq, clid, 0 /*!onlymine */ );
 #elif defined(AFS_SGI_ENV)
     AFS_RWLOCK((vnode_t *) avc, VRWLOCK_WRITE);
index b222aa1..4fdd6b8 100644 (file)
@@ -393,7 +393,7 @@ afs_remove(OSI_VC_ARG(adp), aname, acred)
        code = afsrename(adp, aname, adp, unlname, acred, &treq);
        Tnam1 = unlname;
        if (!code) {
-           char *oldmvid = NULL;
+           struct VenusFid *oldmvid = NULL;
            if (tvc->mvid) 
                oldmvid = tvc->mvid;
            tvc->mvid = (struct VenusFid *)unlname;