Commit Graph

2428 Commits

Author SHA1 Message Date
Steven Dake
985d3d0166 Fix merge error with revision 3001.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3002 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-21 20:48:40 +00:00
Steven Dake
1135c911cd Fix problem where flow control could lock up ipc under very heavy load in very
rare circumstances.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3001 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-21 17:03:36 +00:00
Fabio M. Di Nitto
2b253383dc Fix logging_daemon config parser code.
Resolves: rhbz#615203


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2997 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-19 06:36:48 +00:00
Angus Salkeld
0fab390ae4 SYNC: always call sync_aborted() in sync_confchg_fn().
1) sync_callbacks.sync_abort can be null.
2) sync_processing is set to 0 after syncv1 is done.
   Then syncv2 processing is down. If we get a config change
   after syncv1 is down, but before syncv2 is done then it won't
   get aborted.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2995 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-17 04:59:40 +00:00
Angus Salkeld
c77d601667 CTS: add a test case for Andrew's bug
Bug:
sometimes shutdown can take a long time if all nodes
are shutdown together.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2994 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-16 02:13:04 +00:00
Angus Salkeld
b10fb56e8e SYNCV2: add debug when messages are discarded
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2993 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-16 02:11:25 +00:00
Angus Salkeld
2b4d150f81 SYNC: add some ENTER() trace points.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2992 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-16 02:09:51 +00:00
Angus Salkeld
7e7a32ffc2 SYNCV2: reset the my_memb_determine_ring_id in sync_v2_memb_list_abort()
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2991 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-16 02:08:54 +00:00
Angus Salkeld
e43e760dde SYNC: remove unused primary_designated from sync_primary_callback_fn()
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2990 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-16 02:07:09 +00:00
Steven Dake
b8878d2e76 Remove reset of token timeout on retransmitted token reception. The timer
should only be reset when a real token is received or membership protocol
could run into problems with certain timing parameters.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2988 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-14 18:35:36 +00:00
Steven Dake
10fcf89591 Speed up IPC connection process.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2986 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-07 21:43:15 +00:00
Steven Dake
95615b2fec Fix fail list fault that occurs in very rare circumstances.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2984 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-07-03 21:54:22 +00:00
Steven Dake
d95e91d6e0 Bump trunk revision to 1.2.6.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2980 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-30 19:42:04 +00:00
Steven Dake
171fa9a183 Have makefile create /var/log/cluster rather then corosync.spec file.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2979 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-30 19:39:55 +00:00
Andrew Beekhof
0883fc877b Safely redirect stderr/in/out to /dev/null to prevent fork() from crashing
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2976 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-30 10:20:42 +00:00
Steven Dake
cf0d63aa3f Patch to fix stack protector sig abort that occurs when ipc buffer is too
short.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2974 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-29 18:15:20 +00:00
Angus Salkeld
b116eaca00 ipc: Fix error handling of mmap util functions.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2972 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-29 05:31:44 +00:00
Steven Dake
60f13c03a2 Have corosync spec file own /var/log/cluster/corosync.log
have example use /var/log/cluster/cluster.log as default log file


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2970 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-28 23:30:49 +00:00
Steven Dake
7b832592b0 Fix problem where flight data leaks files in /dev/shm when corosync is
restarted continuously via init scripts.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2964 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-28 22:15:48 +00:00
Jan Friesse
c4cb9ae4f0 Fix OBJDB locking
Patch fixes following situation:

1. objdb receives reload notification and ends in function
object_reload_config. This will call objdb_wrlock. I will call this
thread #1

2. Another thread will decide to update corosync statistics and calls
object_key_increment. This calls objdb_rdlock. This thread is #2. But
because condition (lock_thread != pthread_self()) is satisfied, it will
also calls pthread_rwlock_rdlock. This will blocks, because thread #1
holds the lock.

3. object_reload_config will call reload functions (as real example
xml2objdb). xml2objdb needs to calls object_create. This calls
objdb_rdlock, but will hang on pthread_mutex_lock(&meta_lock), because
this lock is held by thread #2.

-> deadlock

It is handled by using recursive mutex.

Also every function is now really locked.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2963 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-28 13:32:56 +00:00
Jan Friesse
eda1e364f4 Remove pathconf which may fall
Corosync has problem with readdir_r if pathconf function fails.

Main problem is hidden in calling pathconf (internally calls statfs)
which may fail. After this fail, newly allocated memory for readdir_r
was smaller than expected and memory was overwritten by readdir_r.

Patch removes calling of pathconf and rather use NAME_MAX constant which
is always large enough for all file systems.

Also return value of malloc SHOULD be checked.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2962 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-23 08:39:49 +00:00
Angus Salkeld
824467e602 Add make/spec file changes for corosync & blackbox man pages.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2961 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-21 21:03:36 +00:00
Angus Salkeld
40754a5aa7 Add a simple man page for corosync
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2960 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-21 20:43:22 +00:00
Angus Salkeld
39b1288fa3 Add a man page for corosync-blackbox
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2959 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-21 20:42:28 +00:00
Steven Dake
37ce634603 Change version to 1.2.5 in trunk.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2956 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-21 18:17:47 +00:00
Steven Dake
0eb0a06a14 Stop the totem stats updater timer during shutdown to prevent references to
invalid memory.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2953 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-19 00:27:46 +00:00
Steven Dake
1e76356159 Unlock global serializer lock during shutdown.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2949 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-19 00:10:41 +00:00
Andrew Beekhof
daa85f8f6c Prevent segfault in fork()
Not closing stdin/stderr/stdout leads to a segfault in fresetlockfiles()
See https://lists.linux-foundation.org/pipermail/openais/2010-June/014854.html for further info.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2948 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-18 14:33:01 +00:00
Steven Dake
e94b3dd811 Patch from Honza:
Send CPG_REASON_PROCDOWN on process left

Our manual pages are clear:

CPG_REASON_PROCDOWN - the process left a group without calling
cpg_leave().

Currently, we are sending CPG_REASON_LEAVE in such situation.



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2946 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-15 19:35:32 +00:00
Christine Caulfield
bc1cca69b3 object_key_iter() calls object_key_iter_typed() and then always tries to
dereference the string it returns, even if the call fails. The attached
patch fixes this. 



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2944 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-15 15:48:58 +00:00
Steven Dake
583eb6aea5 changes to corosync.spec.in template:
Move configure to %build section
don't set corosync's init levels during an upgrade of the corosync package

Patch from Vadym Chepkov



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2943 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-10 01:18:27 +00:00
Steven Dake
d5ba2d38c1 update version to 1.2.4.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2939 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-09 21:56:37 +00:00
Steven Dake
402c553dd2 Update logsys to use proper ring buffer on file backed map
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2922 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-09 20:14:50 +00:00
Angus Salkeld
f113c5b130 Disable test while I fix it.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2921 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-06 22:17:51 +00:00
Steven Dake
b8af7c3764 sem_wait can be interrupted by signal. Handle interruption properly.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2920 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-03 22:05:17 +00:00
Steven Dake
22471e113d Fix fail to receive logic which occurs very rarely on high loss networks with
software based multicast.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2919 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-03 21:36:21 +00:00
Angus Salkeld
5e1bac5877 temporarily remove a cts test case.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2918 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-02 03:18:10 +00:00
Steven Dake
79c60fd0ad Totem spec is clear:
reject retransmitted tokens
if token.aru = aru in token on last rotation ... do some logic

Here is how the current code works:

last_aru = instance->my_last_aru;
instance->my_last_aru = token->aru;
reject retransmitted tokens
if token.aru = aru in token on last rotation ... do some logic

The issue is last_aru will be set to token->aru when a token retransmission
occurs before a new token arrives.

This results in the "do some logic" part happening more often then it should.    


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2917 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-01 20:35:53 +00:00
Steven Dake
3b457d30c7 Fix problem where callbacks are not delivered to evs service.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2916 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-06-01 15:36:08 +00:00
Steven Dake
c3a6b98bdc The static function 'decode_mode()' is used by the static function
'dump_subsys_config()' which is is turn used by the static function
'dump_full_config()' which is never used.

Are these functions used by someone using some magic? I did not find
any reference and even the flag LOGSYS_DEBUG, which prevents them from
compiling, does not exist at some other point.

If these functions are really not used, please remove them (because at
least one of them has a buffer overflow). Patch against 1.2.3
is attached.

If there is a need for these functions, I'll send a patch to fix
the 'decode_mode()' function.

Kind regards

Andreas Florath

Signed-off-by: Andreas Florath <gnu4u at flonatel dot org>



git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2915 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-28 20:39:58 +00:00
Angus Salkeld
d655a79c6c Add a man page for corosync-quorumtool
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2914 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:56:38 +00:00
Angus Salkeld
3a2771d012 Add a man page for corosync-pload
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2913 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:55:55 +00:00
Angus Salkeld
54fe60a608 Add man page for corosync-fplay.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2912 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:55:22 +00:00
Angus Salkeld
b7ed806439 Add man page for corosync-cpgtool
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2911 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:54:32 +00:00
Angus Salkeld
de317d57e2 Add man page for corosync-cfgtool
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2910 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:52:53 +00:00
Angus Salkeld
fe4f55846a Really corosync-keygen.8
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2909 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:51:52 +00:00
Angus Salkeld
52632075ed Add a man page for corosync-keygen and update corosync_overview
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2908 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 23:49:00 +00:00
Jan Friesse
1d1c3059ad coroipcc - don't loop forever on EINTR
This patch unify behaviour of SYS V semaphores and POSIX semaphores.
POSIX semaphores never return CS_ERR_TRY_AGAIN on EINTR and keeps
waiting. This was fixed for SYS V semaphores in rev. 2303.

Another change is to remove very small probability of hung forever in
coroipcc_dispatch_put.

Last change is removal of duplicate code by adding ipc_sem_wait function.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2907 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-27 08:05:31 +00:00
Steven Dake
4561c6dcf6 Fix problem where memcpy operation occurs incorrectly to copy schedule
parameter data resulting in priority inversion deadlocks on single cpu systems.


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2906 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-26 17:47:39 +00:00
Angus Salkeld
a5d6c5f151 makefile: add -lquorum -lcoroipcc to sam test programs
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2905 fd59a12c-fef9-0310-b244-a6a79926bd2f
2010-05-21 08:53:52 +00:00