From: David Teigland Date: Thu, 2 Nov 2006 15:45:56 +0000 (-0600) Subject: [DLM] status messages ping-pong between unmounted nodes X-Git-Tag: v2.6.20-rc1~145^2^2~5^2~33 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=435618b75b82b5ee511cc01fcdda9c44adb2f4bd;p=linux-2.6-omap-h63xx.git [DLM] status messages ping-pong between unmounted nodes Red Hat BZ 213682 If two nodes leave the lockspace (while unmounting the fs in the case of gfs) after one has sent a STATUS message to the other, STATUS/STATUS_REPLY messages will then ping-pong between the nodes when neither of them can find the lockspace in question any longer. We kill this by not sending another STATUS message when we get a STATUS_REPLY for an unknown lockspace. Signed-off-by: David Teigland Signed-off-by: Steven Whitehouse --- diff --git a/fs/dlm/rcom.c b/fs/dlm/rcom.c index 518239a8b1e..87b12f7d3d2 100644 --- a/fs/dlm/rcom.c +++ b/fs/dlm/rcom.c @@ -412,9 +412,10 @@ void dlm_receive_rcom(struct dlm_header *hd, int nodeid) ls = dlm_find_lockspace_global(hd->h_lockspace); if (!ls) { - log_print("lockspace %x from %d not found", - hd->h_lockspace, nodeid); - send_ls_not_ready(nodeid, rc); + log_print("lockspace %x from %d type %x not found", + hd->h_lockspace, nodeid, rc->rc_type); + if (rc->rc_type == DLM_RCOM_STATUS) + send_ls_not_ready(nodeid, rc); return; }