corosync/Use-knet-TRACE-logging-level-if-available.patch
jxy_git 53d6eba672 Use knet TRACE logging level if available
(cherry picked from commit 2901c7064fb329b0e262f0d5150ee979b2b43947)
2023-08-22 16:21:12 +08:00

61 lines
1.8 KiB
Diff

From ba50e6629471b32d3a39bd145d3b9f485bf5f7f1 Mon Sep 17 00:00:00 2001
From: Christine Caulfield <ccaulfie@redhat.com>
Date: Wed, 29 Mar 2023 14:53:17 +0100
Subject: [PATCH] knet: use knet TRACE logging level if available
---
exec/totemknet.c | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/exec/totemknet.c b/exec/totemknet.c
index e02092c32..55905ee5d 100644
--- a/exec/totemknet.c
+++ b/exec/totemknet.c
@@ -769,6 +769,13 @@ static int log_deliver_fn (
knet_log_get_subsystem_name(msg->subsystem),
msg->msg);
break;
+#ifdef KNET_LOG_TRACE
+ case KNET_LOG_TRACE:
+ libknet_log_printf (LOGSYS_LEVEL_TRACE, "%s: %s",
+ knet_log_get_subsystem_name(msg->subsystem),
+ msg->msg);
+ break;
+#endif
}
bufptr += sizeof(struct knet_log_msg);
done += sizeof(struct knet_log_msg);
@@ -890,6 +897,7 @@ void totemknet_configure_log_level()
int logsys_log_mode;
int knet_log_mode = KNET_LOG_INFO;
uint8_t s;
+ int err;
if (!global_instance || !global_instance->knet_handle) {
return;
@@ -906,12 +914,22 @@ void totemknet_configure_log_level()
knet_log_mode = KNET_LOG_DEBUG;
break;
case LOGSYS_DEBUG_TRACE:
+#ifdef KNET_LOG_TRACE
+ knet_log_mode = KNET_LOG_TRACE;
+#else
knet_log_mode = KNET_LOG_DEBUG;
+#endif
break;
}
log_printf (LOGSYS_LEVEL_DEBUG, "totemknet setting log level %s", knet_log_get_loglevel_name(knet_log_mode));
+ err = 0;
for (s = 0; s<KNET_MAX_SUBSYSTEMS; s++) {
- knet_log_set_loglevel(global_instance->knet_handle, s, knet_log_mode);
+ err = knet_log_set_loglevel(global_instance->knet_handle, s, knet_log_mode);
+ }
+
+ /* If one fails, they all fail. no point in issuing KNET_MAX_SUBSYSTEMS errors */
+ if (err) {
+ log_printf (LOGSYS_LEVEL_ERROR, "totemknet failed to set log level: %s", strerror(errno));
}
}