syslog-ng: workaround segfault for ppc64le

For now syslog-ng segfaults on ppc64le. The problem could be reproduced
by simply adding syslog-ng to IMAGE_INSTALL and then building and starting
an image for qemuppc64.

The underlying root cause is unknown yet. This workaround, on the other hand,
helps improve the situation a little bit in the sense that users can at least
use syslog-ng on ppc64le targets.

Note that this workaround should be dropped once the upstream issues[1][2]
are fixed. This has also stated very clearly in the patch.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=30062
[2] https://github.com/syslog-ng/syslog-ng/issues/4285

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Chen Qi
2023-01-31 17:42:45 +08:00
committed by Khem Raj
parent 60084508a4
commit f05ea5c2e8
2 changed files with 47 additions and 0 deletions
@@ -0,0 +1,46 @@
From 616446afab61ab98b28c81605e2efd4a689f37d1 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Fri, 20 Jan 2023 14:59:14 +0800
Subject: [PATCH] plugin.c: workaround powerpc64le segfaults error
syslog-ng segfaults on powerpc64le, workaround this error.
See https://github.com/syslog-ng/syslog-ng/issues/4285 and
https://sourceware.org/bugzilla/show_bug.cgi?id=30062 for more details.
This patch should be dropped once the above issues are fixed.
Upstream-Status: Inappropriate [OE Specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
lib/plugin.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/lib/plugin.c b/lib/plugin.c
index fbbfb92..3a03617 100644
--- a/lib/plugin.c
+++ b/lib/plugin.c
@@ -528,10 +528,7 @@ plugin_discover_candidate_modules(PluginContext *context)
}
}
g_free(module_name);
- if (mod)
- g_module_close(mod);
- else
- mod = NULL;
+ mod = NULL;
}
}
g_dir_close(dir);
@@ -663,8 +660,7 @@ plugin_list_modules(FILE *out, gboolean verbose)
first = FALSE;
}
g_free(module_name);
- if (mod)
- g_module_close(mod);
+ mod = NULL;
}
}
g_dir_close(dir);
--
2.17.1
@@ -23,6 +23,7 @@ SRC_URI = "https://github.com/balabit/syslog-ng/releases/download/${BP}/${BP}.ta
file://syslog-ng-tmp.conf \
file://syslog-ng.service-the-syslog-ng-service.patch \
"
SRC_URI:append:powerpc64le = " file://0001-plugin.c-workaround-powerpc64le-segfaults-error.patch"
SRC_URI[sha256sum] = "5491f686d0b829b69b2e0fc0d66a62f51991aafaee005475bfa38fab399441f7"