From mboxrd@z Thu Jan 1 00:00:00 1970 From: pcaulfield@sourceware.org Date: 19 Jan 2007 16:20:15 -0000 Subject: [Cluster-devel] cluster/cman-kernel/src membership.c Message-ID: <20070119162015.19564.qmail@sourceware.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit CVSROOT: /cvs/cluster Module name: cluster Branch: RHEL4 Changes by: pcaulfield at sourceware.org 2007-01-19 16:20:14 Modified files: cman-kernel/src: membership.c Log message: Always queue kill messages that need ACKs, so we don't block apps like qdiskd. bz#223462 Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/cman-kernel/src/membership.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.44.2.25&r2=1.44.2.26 --- cluster/cman-kernel/src/Attic/membership.c 2007/01/18 15:08:35 1.44.2.25 +++ cluster/cman-kernel/src/Attic/membership.c 2007/01/19 16:20:14 1.44.2.26 @@ -1068,6 +1068,12 @@ { char killmsg; struct sockaddr_cl saddr; + int flags; + + if (needack) + flags = MSG_QUEUE; + else + flags = MSG_NOACK; killmsg = CLUSTER_MEM_KILL; @@ -1075,7 +1081,7 @@ saddr.scl_port = CLUSTER_PORT_MEMBERSHIP; saddr.scl_nodeid = nodeid; return kcl_sendmsg(mem_socket, &killmsg, 1, &saddr, - sizeof (struct sockaddr_cl), needack?0:MSG_NOACK); + sizeof (struct sockaddr_cl), flags); } /* Tell the rest of the cluster a node has gone down */