mirror_corosync/include/corosync
Angus Salkeld f9609f3217 Propagate the flow control state between AIS exec and library
This patch causes the flow control state in the library to be set
properly when the flow control is turned off (disabled).  Then it can be
read properly by the flow control apis.
This also fixes the case where the application is no longer sending
messages and it has already dispatched all its received messages
before flow control is disabled.

Also, CPG response messages with a TRY_AGAIN error did NOT contain
a valid flow control state value. This meant the library could get
stuck with flow control enabled (flow control was never enabled
for the EXEC, so no disable event occurred).
This case was hit when a new node was joining - sync_in_process()
resulted in a TRY_AGAIN for error cpg_mcast_joined).

Also, in message_handler_req_exec_cpg_mcast() the state passed
back to the library defaulted to disabled for messages received
from another node (even if flow control was still enabled)
- this meant if multiple nodes were sending CPG messages,
  then the library flow control state flip-flopped between
  enabled and disabled.

Author: Steven Dake <sdake@redhat.com> &
        Tim Beale <tim.beale@alliedtelesis.co.nz>




git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1667 fd59a12c-fef9-0310-b244-a6a79926bd2f
2008-09-17 19:15:00 +00:00
..
engine Propagate the flow control state between AIS exec and library 2008-09-17 19:15:00 +00:00
lcr reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
totem Provide a way to configure (at compile time) message and queue sizes. 2008-08-20 00:57:40 +00:00
ais_util.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
cfg.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
confdb.h This patch adds key_increment and key_decrement calls to the objdb and 2008-09-03 07:58:08 +00:00
cpg.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
evs.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
hdb.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
ipc_cfg.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
ipc_confdb.h This patch adds key_increment and key_decrement calls to the objdb and 2008-09-03 07:58:08 +00:00
ipc_cpg.h Propagate the flow control state between AIS exec and library 2008-09-17 19:15:00 +00:00
ipc_evs.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
ipc_gen.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
jhash.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
list.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
mar_cpg.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00
mar_gen.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
queue.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
rmd.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
saAis.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
sq.h Fix an assert caused by faulty sort-queue management. 2008-08-20 00:53:38 +00:00
swab.h reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin 2008-08-14 14:59:50 +00:00