From: Derrick Brashear Date: Sun, 6 Jan 2008 15:57:52 +0000 (+0000) Subject: STABLE14-viced-threadquota-release-holds-20080106 X-Git-Tag: openafs-stable-1_4_7pre1~88 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=634b7f4b4c998946b5a24d207383650f07f3e456;p=packages%2Fo%2Fopenafs.git STABLE14-viced-threadquota-release-holds-20080106 LICENSE IPL10 release a hold when we decline to service a host (cherry picked from commit 342595b2aa712ca7c0f2c160f9cba304dd27d574) --- diff --git a/src/viced/host.c b/src/viced/host.c index a9841e937..cc36eca21 100644 --- a/src/viced/host.c +++ b/src/viced/host.c @@ -1418,8 +1418,11 @@ h_GetHost_r(struct rx_connection *tcon) * of the caller matches the identity in the host structure. */ if ((host->hostFlags & HWHO_INPROGRESS) && - h_threadquota(host->lock.num_waiting)) + h_threadquota(host->lock.num_waiting)) { + if (!held) + h_Release_r(host); return 0; + } h_Lock_r(host); if (!(host->hostFlags & ALTADDR)) { host->hostFlags &= ~HWHO_INPROGRESS;