From: Tom Keiser Date: Mon, 12 Nov 2007 18:17:43 +0000 (+0000) Subject: dafs-optimize-shutdown-20071112 X-Git-Tag: BP-openafs-windows-kdfs-ifs~358 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=cd8311641fd32328dd1d8a07b1318ecb53726bd1;p=packages%2Fo%2Fopenafs.git dafs-optimize-shutdown-20071112 optimize shutdown case as is done elsewhere, for dafs. --- diff --git a/src/viced/host.c b/src/viced/host.c index 24809b5d2..54247a894 100644 --- a/src/viced/host.c +++ b/src/viced/host.c @@ -3328,6 +3328,16 @@ CheckHost_r(register struct host *host, int held, char *dummy) struct rx_connection *cb_conn = NULL; int code; +#ifdef AFS_DEMAND_ATTACH_FS + /* kill the checkhost lwp ASAP during shutdown */ + FS_STATE_RDLOCK; + if (fs_state.mode == FS_MODE_SHUTDOWN) { + FS_STATE_UNLOCK; + return H_ENUMERATE_BAIL(held); + } + FS_STATE_UNLOCK; +#endif + /* Host is held by h_Enumerate_r */ for (client = host->FirstClient; client; client = client->next) { if (client->refCount == 0 && client->LastCall < clientdeletetime) {