diff --git a/[refs] b/[refs] index 32a6b3def4e7..02edc385f255 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0113ab34644649aceaac37ef4b7e5c7d5c183be3 +refs/heads/master: d801b861681116ea23a7fb87a70bf463d29c8b9c diff --git a/trunk/fs/lockd/host.c b/trunk/fs/lockd/host.c index ebec0098efbf..ca6b16fc3101 100644 --- a/trunk/fs/lockd/host.c +++ b/trunk/fs/lockd/host.c @@ -379,8 +379,13 @@ nlm_shutdown_hosts(void) /* First, make all hosts eligible for gc */ dprintk("lockd: nuking all hosts...\n"); for (chain = nlm_hosts; chain < nlm_hosts + NLM_HOST_NRHASH; ++chain) { - hlist_for_each_entry(host, pos, chain, h_hash) + hlist_for_each_entry(host, pos, chain, h_hash) { host->h_expires = jiffies - 1; + if (host->h_rpcclnt) { + rpc_shutdown_client(host->h_rpcclnt); + host->h_rpcclnt = NULL; + } + } } /* Then, perform a garbage collection pass */