File 0002-Refactor-watchdog-fencing-convenience-function-pcmk_.patch of Package pacemaker.32051
From f2cc2a4277124230903a18713e50604a8f1842cd Mon Sep 17 00:00:00 2001
From: Klaus Wenninger <klaus.wenninger@aon.at>
Date: Wed, 1 Mar 2023 15:00:15 +0100
Subject: [PATCH 2/3] Refactor: watchdog-fencing: convenience function
pcmk__is_fencing_action
for consistency and add comment making clear why this block exits
with new timer set in any case
---
daemons/fenced/fenced_remote.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
Index: pacemaker-2.1.2+20211124.ada5c3b36/daemons/fenced/fenced_remote.c
===================================================================
--- pacemaker-2.1.2+20211124.ada5c3b36.orig/daemons/fenced/fenced_remote.c
+++ pacemaker-2.1.2+20211124.ada5c3b36/daemons/fenced/fenced_remote.c
@@ -1633,7 +1633,7 @@ call_remote_stonith(remote_fencing_op_t
(pcmk__str_eq(device, STONITH_WATCHDOG_ID,
pcmk__str_none)) ||
(pcmk__str_eq(peer->host, op->target, pcmk__str_casei)
- && !pcmk__str_eq(op->action, "on", pcmk__str_casei))) &&
+ && pcmk__str_any_of(op->action, "off", "reboot", "poweroff", NULL))) &&
check_watchdog_fencing_and_wait(op))) {
/* Some thoughts about self-fencing cases reaching this point:
@@ -1653,6 +1653,9 @@ call_remote_stonith(remote_fencing_op_t
Otherwise the selection of stonith-watchdog-timeout at
least is questionable.
*/
+
+ /* coming here we're not waiting for watchdog timeout -
+ thus engage timer with timout evaluated before */
op->op_timer_one = g_timeout_add((1000 * timeout_one), remote_op_timeout_one, op);
}