aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch')
-rw-r--r--meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch74
1 files changed, 0 insertions, 74 deletions
diff --git a/meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch b/meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch
deleted file mode 100644
index b5bfcd025a..0000000000
--- a/meta-oe/recipes-support/syslog-ng/files/0001-syslog-ng-fix-segment-fault-during-service-start.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-Subject: [PATCH] syslog-ng: fix segment fault during service start on arm64
-
-service start failed since segment fault on arch arm64,
-syslog-ng have a submodule ivykis, from ivykis V0.42,
-it use pthread_atfork, but for arm64, this symbol is
-not included by libpthread, so cause segment fault.
-
-refer systemd, replace pthread_atfork with __register_atfork
-to fix this problem.
-
-I have create an issue, and this proposal to upstream.
-https://github.com/buytenh/ivykis/issues/15
-
-Upstream-Status: Pending
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
-Update for 3.24.1.
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- lib/ivykis/src/pthr.h | 23 ++++++++++++-----------
- 1 file changed, 12 insertions(+), 11 deletions(-)
-
-diff --git a/lib/ivykis/src/pthr.h b/lib/ivykis/src/pthr.h
-index 29e4be7..5d29096 100644
---- a/lib/ivykis/src/pthr.h
-+++ b/lib/ivykis/src/pthr.h
-@@ -24,6 +24,16 @@
- #include <pthread.h>
- #include <signal.h>
-
-+#ifdef __GLIBC__
-+/* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
-+ * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
-+ * libpthread, as it is part of glibc anyway. */
-+extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void * __dso_handle);
-+extern void* __dso_handle __attribute__ ((__weak__));
-+#else
-+#define __register_atfork(prepare,parent,child,dso) pthread_atfork(prepare,parent,child)
-+#endif
-+
- #ifdef HAVE_PRAGMA_WEAK
- #pragma weak pthread_create
- #endif
-@@ -36,16 +46,7 @@ static inline int pthreads_available(void)
-
- #ifdef HAVE_PRAGMA_WEAK
-
--/*
-- * On Linux, pthread_atfork() is defined in libc_nonshared.a (for
-- * glibc >= 2.28) or libpthread_nonshared.a (for glibc <= 2.27), and
-- * we want to avoid "#pragma weak" for that symbol because that causes
-- * it to be undefined even if you link lib*_nonshared.a in explicitly.
-- */
--#if !defined(HAVE_LIBC_NONSHARED) && !defined(HAVE_LIBPTHREAD_NONSHARED)
--#pragma weak pthread_atfork
--#endif
--
-+#pragma weak __register_atfork
- #pragma weak pthread_create
- #pragma weak pthread_detach
- #pragma weak pthread_getspecific
-@@ -73,7 +74,7 @@ static inline int
- pthr_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void))
- {
- if (pthreads_available())
-- return pthread_atfork(prepare, parent, child);
-+ return __register_atfork(prepare, parent, child, __dso_handle);
-
- return ENOSYS;
- }
---
-2.7.4
-