rpms/openais/FC-6 revision-1406.patch, NONE, 1.1 revision-1407.patch, NONE, 1.1 revision-1408.patch, NONE, 1.1 revision-1409.patch, NONE, 1.1 revision-1423.patch, NONE, 1.1 openais.spec, 1.26, 1.27
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Tue Aug 28 16:05:27 UTC 2007
Author: sdake
Update of /cvs/dist/rpms/openais/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv4537/FC-6
Modified Files:
openais.spec
Added Files:
revision-1406.patch revision-1407.patch revision-1408.patch
revision-1409.patch revision-1423.patch
Log Message:
auto-import openais-0.80.3-4 on branch FC-6 from openais-0.80.3-4.src.rpm
revision-1406.patch:
totemsrp.c | 30 +++++++++---------------------
1 files changed, 9 insertions(+), 21 deletions(-)
--- NEW FILE revision-1406.patch ---
Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c (revision 1405)
+++ exec/totemsrp.c (revision 1406)
@@ -393,8 +393,6 @@
unsigned int my_token_seq;
- unsigned int my_commit_token_seq;
-
/*
* Timers
*/
@@ -619,8 +617,6 @@
instance->my_token_seq = SEQNO_START_TOKEN - 1;
- instance->my_commit_token_seq = SEQNO_START_TOKEN - 1;
-
instance->memb_state = MEMB_STATE_OPERATIONAL;
instance->set_aru = -1;
@@ -1646,8 +1642,6 @@
struct totemsrp_instance *instance,
int gather_from)
{
- instance->my_commit_token_seq = SEQNO_START_TOKEN - 1;
-
memb_set_merge (
&instance->my_id, 1,
instance->my_proc_list, &instance->my_proc_list_entries);
@@ -1733,8 +1727,6 @@
instance->memb_state = MEMB_STATE_COMMIT;
- instance->my_commit_token_seq = SEQNO_START_TOKEN - 1;
-
/*
* reset all flow control variables since we are starting a new ring
*/
@@ -3961,16 +3953,6 @@
addr = (struct srp_addr *)memb_commit_token->end_of_commit_token;
memb_list = (struct memb_commit_token_memb_entry *)(addr + memb_commit_token->addr_entries);
- if (sq_lte_compare (memb_commit_token->token_seq,
- instance->my_commit_token_seq)) {
- /*
- * discard token
- */
- return (0);
- }
- instance->my_commit_token_seq = memb_commit_token->token_seq;
-
-
#ifdef TEST_DROP_COMMIT_TOKEN_PERCENTAGE
if (random()%100 < TEST_DROP_COMMIT_TOKEN_PERCENTAGE) {
return (0);
@@ -3998,9 +3980,15 @@
break;
case MEMB_STATE_COMMIT:
-// if (memcmp (&memb_commit_token->ring_id, &instance->my_ring_id,
-// sizeof (struct memb_ring_id)) == 0) {
- if (memb_commit_token->ring_id.seq == instance->my_ring_id.seq) {
+ /*
+ * If retransmitted commit tokens are sent on this ring
+ * filter them out and only enter recovery once the
+ * commit token has traversed the array. This is
+ * determined by :
+ * memb_commit_token->memb_index == memb_commit_token->addr_entries) {
+ */
+ if (memb_commit_token->ring_id.seq == instance->my_ring_id.seq &&
+ memb_commit_token->memb_index == memb_commit_token->addr_entries) {
memb_state_recovery_enter (instance, memb_commit_token);
}
break;
revision-1407.patch:
totemsrp.c | 2 ++
1 files changed, 2 insertions(+)
--- NEW FILE revision-1407.patch ---
Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c (revision 1406)
+++ exec/totemsrp.c (revision 1407)
@@ -1548,6 +1548,8 @@
unsigned int new_memb_list_totemip[PROCESSOR_COUNT_MAX];
unsigned int left_list[PROCESSOR_COUNT_MAX];
+ memb_consensus_reset (instance);
+
old_ring_state_reset (instance);
ring_reset (instance);
deliver_messages_from_recovery_to_regular (instance);
revision-1408.patch:
totemsrp.c | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
--- NEW FILE revision-1408.patch ---
Index: exec/totemsrp.c
===================================================================
--- exec/totemsrp.c (revision 1407)
+++ exec/totemsrp.c (revision 1408)
@@ -549,7 +549,8 @@
int fcc_mcasts_allowed);
static void messages_free (struct totemsrp_instance *instance, unsigned int token_aru);
-static void memb_ring_id_store (struct totemsrp_instance *instance);
+static void memb_ring_id_set_and_store (struct totemsrp_instance *instance,
+ struct memb_ring_id *ring_id);
static void memb_state_commit_token_update (struct totemsrp_instance *instance, struct memb_commit_token *commit_token);
static void memb_state_commit_token_target_set (struct totemsrp_instance *instance, struct memb_commit_token *commit_token);
static int memb_state_commit_token_send (struct totemsrp_instance *instance, struct memb_commit_token *memb_commit_token);
@@ -1707,10 +1708,10 @@
memb_state_commit_token_target_set (instance, commit_token);
+ memb_ring_id_set_and_store (instance, &commit_token->ring_id);
+
memb_state_commit_token_send (instance, commit_token);
- memcpy (&instance->my_ring_id, &commit_token->ring_id,
- sizeof (struct memb_ring_id));
instance->token_ring_id_seq = instance->my_ring_id.seq;
poll_timer_delete (instance->totemsrp_poll_handle, instance->memb_timer_state_gather_join_timeout);
@@ -1920,7 +1921,6 @@
reset_token_timeout (instance); // REVIEWED
reset_token_retransmit_timeout (instance); // REVIEWED
- memb_ring_id_store (instance);
instance->memb_state = MEMB_STATE_RECOVERY;
return;
@@ -2829,6 +2829,7 @@
}
res = write (fd, &memb_ring_id->seq, sizeof (unsigned long long));
assert (res == sizeof (unsigned long long));
+ fsync (fd);
close (fd);
} else {
log_printf (instance->totemsrp_log_level_warning,
@@ -2840,13 +2841,16 @@
instance->token_ring_id_seq = memb_ring_id->seq;
}
-static void memb_ring_id_store (
- struct totemsrp_instance *instance)
+static void memb_ring_id_set_and_store (
+ struct totemsrp_instance *instance,
+ struct memb_ring_id *ring_id)
{
char filename[256];
int fd;
int res;
+ memcpy (&instance->my_ring_id, ring_id, sizeof (struct memb_ring_id));
+
sprintf (filename, "%s/ringid_%s",
rundir, totemip_print (&instance->my_id.addr[0]));
@@ -2866,6 +2870,7 @@
//assert (fd > 0);
res = write (fd, &instance->my_ring_id.seq, sizeof (unsigned long long));
assert (res == sizeof (unsigned long long));
+ fsync (fd);
close (fd);
}
revision-1409.patch:
totempg.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)
--- NEW FILE revision-1409.patch ---
Index: exec/totempg.c
===================================================================
--- exec/totempg.c (revision 1408)
+++ exec/totempg.c (revision 1409)
@@ -870,13 +870,14 @@
/*
* Determine if a message of msg_size could be queued
*/
+#define FUZZY_AVAIL_SUBTRACT 5
static int send_ok (
int msg_size)
{
int avail = 0;
int total;
- avail = totemmrp_avail ();
+ avail = totemmrp_avail () - FUZZY_AVAIL_SUBTRACT;
/*
* msg size less then totempg_totem_config->net_mtu - 25 will take up
revision-1423.patch:
ckpt.c | 14 +++++++-------
sync.c | 3 +++
2 files changed, 10 insertions(+), 7 deletions(-)
--- NEW FILE revision-1423.patch ---
Index: exec/ckpt.c
===================================================================
--- exec/ckpt.c (revision 1422)
+++ exec/ckpt.c (revision 1423)
@@ -825,14 +825,7 @@
}
my_lowest_nodeid = 0xffffffff;
- for (i = 0; i < my_member_list_entries; i++) {
- if ((my_member_list[i] != 0) &&
- (my_member_list[i] < my_lowest_nodeid)) {
- my_lowest_nodeid = my_member_list[i];
- }
- }
-
/*
* Handle regular configuration
*/
@@ -842,6 +835,13 @@
my_member_list_entries = member_list_entries;
memcpy (&my_saved_ring_id, ring_id,
sizeof (struct memb_ring_id));
+ for (i = 0; i < my_member_list_entries; i++) {
+ if ((my_member_list[i] != 0) &&
+ (my_member_list[i] < my_lowest_nodeid)) {
+
+ my_lowest_nodeid = my_member_list[i];
+ }
+ }
}
}
Index: exec/sync.c
===================================================================
--- exec/sync.c (revision 1422)
+++ exec/sync.c (revision 1423)
@@ -452,6 +452,9 @@
{
sync_ring_id = ring_id;
+ if (configuration_type != TOTEM_CONFIGURATION_REGULAR) {
+ return;
+ }
if (sync_processing && sync_callbacks.sync_abort != NULL) {
sync_callbacks.sync_abort ();
}
Index: openais.spec
===================================================================
RCS file: /cvs/dist/rpms/openais/FC-6/openais.spec,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- openais.spec 3 Jul 2007 22:06:31 -0000 1.26
+++ openais.spec 28 Aug 2007 16:05:25 -0000 1.27
@@ -1,12 +1,17 @@
Name: openais
Summary: The openais Standards-Based Cluster Framework executive and APIs
Version: 0.80.3
-Release: 1%{?dist}
+Release: 4%{?dist}
License: BSD
Group: System Environment/Base
URL: http://developer.osdl.org/dev/openais/
Source0: http://developer.osdl.org/dev/openais/downloads/openais-%{version}/openais-%{version}.tar.gz
Patch0: openais-0.76-defaultconfig.patch
+Patch1: revision-1406.patch
+Patch2: revision-1407.patch
+Patch3: revision-1408.patch
+Patch4: revision-1409.patch
+Patch5: revision-1423.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExclusiveArch: i386 ppc x86_64 ppc64 ia64 s390 s390x alpha
@@ -32,6 +37,11 @@
%prep
%setup -q -n openais-%{version}
%patch0
+%patch1
+%patch2
+%patch3
+%patch4
+%patch5
%build
# -O3 required for performance reasons
@@ -170,6 +180,28 @@
%{_mandir}/man3/evs_membership_get.3*
%changelog
+* Tue Aug 28 2007 Steven Dake <sdake at redhat.com> - 0.80.3-4
+- Resolves: rhbz#251082
+- Add upstream revision 1423 - Fix synchronization defect resulting in segfault.
+- This is the fc6 build.
+
+* Tue Aug 1 2007 Steven Dake <sdake at redhat.com> - 0.80.3-3
+- Resolves: rhbz#209862
+- Resolves: rhbz#249506
+- Resolves: rhbz#249509
+- Resolves: rhbz#247733
+
+* Tue Aug 1 2007 Steven Dake <sdake at redhat.com> - 0.80.3-2
+- Resolves: rhbz#209862
+- Add upstream revision 1406 - Filter commit token when it is retransmitted.
+- Resolves: rhbz#249506
+- Add upstream revision 1407 - Reset consensus array on entering operational mode.
+- Resolves: rhbz#249509
+- Add upstream revision 1408 - Store the ring id information properly when it changes.
+- Resolves: rhbz#247733
+- Add upstream revision 1409 - Add subtractor to availability of message entries for the totem message queue
+- This is the rhel5 version of 0.80.3-0 with some upstream patches.
+
* Tue Jun 26 2007 Steven Dake <sdake at redhat.com> - 0.80.3-1
- Resolves: rhbz#243119
- Resolves: rhbz#221190
@@ -177,7 +209,7 @@
- Resolves: rhbz#233892
- Resolves: rhbz#236549
- New upstream version including all previous revisions.
-- Tihs is the fc6 version of 0.80.3-1.
+- This is the fc6 version of 0.80.3-1.
* Tue Jun 26 2007 Steven Dake <sdake at redhat.com> - 0.80.3-0
- Resolves: rhbz#243119
More information about the fedora-cvs-commits
mailing list