From: Derrick Brashear Date: Sun, 6 Jan 2008 15:57:40 +0000 (+0000) Subject: DEVEL15-viced-threadquota-release-holds-20080106 X-Git-Tag: openafs-devel-1_5_30~6 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=909efa4b7d7c0d4af0eeff85f5f3675e6582cf4b;p=packages%2Fo%2Fopenafs.git DEVEL15-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 ef1dca140..811fd9216 100644 --- a/src/viced/host.c +++ b/src/viced/host.c @@ -1440,8 +1440,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;