From: Jim Rees Date: Mon, 13 Mar 2006 19:18:07 +0000 (+0000) Subject: no-clid-for-bsd-20060313 X-Git-Tag: mp-rxtcp-20060314~3 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=b1883ef6ad619ffa1fb76caf5d3568f69c1e3136;p=packages%2Fo%2Fopenafs.git no-clid-for-bsd-20060313 Back out rev 1.28 for BSD. On BSD, clid is not necessarily a pid. Passing it to HandleFlock results in client hangs. --- diff --git a/src/afs/VNOPS/afs_vnop_flock.c b/src/afs/VNOPS/afs_vnop_flock.c index 55df7cd75..6222e45a2 100644 --- a/src/afs/VNOPS/afs_vnop_flock.c +++ b/src/afs/VNOPS/afs_vnop_flock.c @@ -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); diff --git a/src/afs/VNOPS/afs_vnop_remove.c b/src/afs/VNOPS/afs_vnop_remove.c index b222aa136..4fdd6b86a 100644 --- a/src/afs/VNOPS/afs_vnop_remove.c +++ b/src/afs/VNOPS/afs_vnop_remove.c @@ -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;