summaryrefslogtreecommitdiff
path: root/fs/lockd/host.c
diff options
context:
space:
mode:
authorOlaf Kirch <okir@suse.de>2006-10-04 02:15:51 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-04 07:55:16 -0700
commit977faf392fc898407554bbe7338d57b29e3660cf (patch)
tree9bd611c100e3e2d1aa336010124cda0155183bb8 /fs/lockd/host.c
parent7b2b1fee30df7e2165525cd03f7d1d01a3a56794 (diff)
[PATCH] knfsd: hide use of lockd's h_monitored flag
This patch moves all checks of the h_monitored flag into the nsm_monitor/unmonitor functions. A subsequent patch will replace the mechanism by which we mark a host as being monitored. There is still one occurence of h_monitored outside of mon.c and that is in clntlock.c where we respond to a reboot. The subsequent patch will modify this too. Signed-off-by: Olaf Kirch <okir@suse.de> Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/lockd/host.c')
-rw-r--r--fs/lockd/host.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/lockd/host.c b/fs/lockd/host.c
index a0d0b58ce7a4..637ec9567066 100644
--- a/fs/lockd/host.c
+++ b/fs/lockd/host.c
@@ -331,9 +331,12 @@ nlm_gc_hosts(void)
}
dprintk("lockd: delete host %s\n", host->h_name);
*q = host->h_next;
- /* Don't unmonitor hosts that have been invalidated */
- if (host->h_monitored && !host->h_killed)
- nsm_unmonitor(host);
+
+ /*
+ * Unmonitor unless host was invalidated (i.e. lockd restarted)
+ */
+ nsm_unmonitor(host);
+
if ((clnt = host->h_rpcclnt) != NULL) {
if (atomic_read(&clnt->cl_users)) {
printk(KERN_WARNING