[keepalived/f21] Add patch to revert previous preempt extension (#1202584)
rohara
rohara at fedoraproject.org
Wed Mar 18 14:27:35 UTC 2015
commit 83bc9198511deb3590f565e4b716b91758a61d9e
Author: Ryan O'Hara <rohara at redhat.com>
Date: Wed Mar 18 08:58:30 2015 -0500
Add patch to revert previous preempt extension (#1202584)
vrrp-revert-previous-preempt-extension.patch | 67 ++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
---
diff --git a/vrrp-revert-previous-preempt-extension.patch b/vrrp-revert-previous-preempt-extension.patch
new file mode 100644
index 0000000..20d6ce2
--- /dev/null
+++ b/vrrp-revert-previous-preempt-extension.patch
@@ -0,0 +1,67 @@
+From 2bab517b2b50c1e784e79a082d971f4855e9e0ab Mon Sep 17 00:00:00 2001
+From: Alexandre Cassen <acassen at gmail.com>
+Date: Tue, 17 Mar 2015 21:07:36 +0100
+Subject: [PATCH] vrrp: revert previous preempt extension
+
+Well, nothing more to add ;)
+---
+ keepalived/vrrp/vrrp.c | 22 ++++++----------------
+ 1 file changed, 6 insertions(+), 16 deletions(-)
+
+diff --git a/keepalived/vrrp/vrrp.c b/keepalived/vrrp/vrrp.c
+index 21481f4..db43f8f 100644
+--- a/keepalived/vrrp/vrrp.c
++++ b/keepalived/vrrp/vrrp.c
+@@ -819,8 +819,7 @@ vrrp_state_goto_master(vrrp_t * vrrp)
+ return;
+ }
+
+- if (!vrrp->nopreempt)
+- vrrp_send_adv(vrrp, vrrp->effective_priority);
++ vrrp_send_adv(vrrp, vrrp->effective_priority);
+
+ vrrp->state = VRRP_STATE_MAST;
+ log_message(LOG_INFO, "VRRP_Instance(%s) Transition to MASTER STATE"
+@@ -999,19 +998,7 @@ vrrp_state_master_rx(vrrp_t * vrrp, char *buf, int buflen)
+ "VRRP_Instance(%s) Dropping received VRRP packet...",
+ vrrp->iname);
+ return 0;
+- } else if (hd->priority == 0) {
+- vrrp_send_adv(vrrp, vrrp->effective_priority);
+- return 0;
+- } else if (hd->priority < vrrp->effective_priority ||
+- (hd->priority == vrrp->effective_priority &&
+- vrrp_saddr_cmp(&vrrp->pkt_saddr, vrrp) < 0)) {
+- /* In nopreempt mode, just switch to BACKUP */
+- if (vrrp->nopreempt) {
+- log_message(LOG_INFO, "VRRP_Instance(%s) Received lower prio advert"
+- " in nopreempt mode", vrrp->iname);
+- goto backup;
+- }
+-
++ } else if (hd->priority < vrrp->effective_priority) {
+ /* We receive a lower prio adv we just refresh remote ARP cache */
+ log_message(LOG_INFO, "VRRP_Instance(%s) Received lower prio advert"
+ ", forcing new election", vrrp->iname);
+@@ -1026,6 +1013,9 @@ vrrp_state_master_rx(vrrp_t * vrrp, char *buf, int buflen)
+ vrrp_send_adv(vrrp, vrrp->effective_priority);
+ vrrp_send_link_update(vrrp, vrrp->garp_rep);
+ return 0;
++ } else if (hd->priority == 0) {
++ vrrp_send_adv(vrrp, vrrp->effective_priority);
++ return 0;
+ } else if (hd->priority > vrrp->effective_priority ||
+ (hd->priority == vrrp->effective_priority &&
+ vrrp_saddr_cmp(&vrrp->pkt_saddr, vrrp) > 0)) {
+@@ -1044,7 +1034,7 @@ vrrp_state_master_rx(vrrp_t * vrrp, char *buf, int buflen)
+ vrrp->ipsecah_counter->seq_number = ntohl(ah->seq_number) - 1;
+ vrrp->ipsecah_counter->cycle = 0;
+ }
+- backup:
++
+ vrrp->ms_down_timer = 3 * vrrp->adver_int + VRRP_TIMER_SKEW(vrrp);
+ vrrp->wantstate = VRRP_STATE_BACK;
+ vrrp->state = VRRP_STATE_BACK;
+--
+1.9.3
+
More information about the scm-commits
mailing list