mirror_corosync/exec
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
..
apidef.c Propagate the flow control state between AIS exec and library 2008-09-17 19:15:00 +00:00
apidef.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
coroparse.c Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
coropoll.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
crypto.c Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
crypto.h Split openais and corosync tree into two seperate repositories. 2008-08-05 13:23:46 +00:00
flow.c Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
flow.h Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
ipc.c Propagate the flow control state between AIS exec and library 2008-09-17 19:15:00 +00:00
ipc.h Propagate the flow control state between AIS exec and library 2008-09-17 19:15:00 +00:00
logsys.c If syslog() blocked, node-leave events were incorrectly reported 2008-09-17 18:22:58 +00:00
main.c Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
main.h Provide a way to configure (at compile time) message and queue sizes. 2008-08-20 00:57:40 +00:00
mainconfig.c Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
mainconfig.h Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
Makefile Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
mempool.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
mempool.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
objdb.c Reinstate key_iter_reset that got removed by mistake in 1660 2008-09-03 10:01:31 +00:00
service.c Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
service.h Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
sync.c Add support for AMF (sync_request) 2008-09-17 19:04:19 +00:00
sync.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
timer.c Finish the renaming of openais to corosync in the tree. 2008-08-15 06:15:26 +00:00
timer.h Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
tlist.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemconfig.c Provide a way to configure (at compile time) message and queue sizes. 2008-08-20 00:57:40 +00:00
totemconfig.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemip.c use getifaddrs to enumerate interface on FreeBSD and Darwin (patch from Mathieu Virbel) 2008-09-16 15:35:09 +00:00
totemmrp.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemmrp.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemnet.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemnet.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totempg.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemrrp.c Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemrrp.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
totemsrp.c Zero out unused totemsrp my_proc_list entries 2008-08-20 01:07:29 +00:00
totemsrp.h Revert patch 1633 which breaks build. 2008-08-14 16:44:26 +00:00
util.c Add support for AMF (sync_request) 2008-09-17 19:04:19 +00:00
util.h Add support for AMF (sync_request) 2008-09-17 19:04:19 +00:00
version.h Split openais and corosync tree into two seperate repositories. 2008-08-05 13:23:46 +00:00
vsf_ykd.c Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
vsf.h Proper rename of openais usage to corosync throughout tree. 2008-08-14 16:54:46 +00:00
wthread.c aisexec crash on exit 2008-08-20 01:02:43 +00:00
wthread.h Split openais and corosync tree into two seperate repositories. 2008-08-05 13:23:46 +00:00