aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2023-02-04 16:58:22 -0800
committerKhem Raj <raj.khem@gmail.com>2023-02-04 16:59:40 -0800
commit5c43f2b9a15bc21d1532233b958cbf5abd29ad14 (patch)
treecb91ace66b19a9e5f07574e287b6f66f2357b4fe /meta-oe
parent5da852a616209288470708da6f5ddb5647ab69c1 (diff)
downloadmeta-openembedded-contrib-5c43f2b9a15bc21d1532233b958cbf5abd29ad14.tar.gz
minicoredumper: Upgrade to 2.0.2 release
Drop patches already upstreamed. Add patch to fix tests with clang compiler Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe')
-rw-r--r--meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-retry-elf-parsing-as-long-as-needed.patch128
-rw-r--r--meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper_demo-Use-optnone-attribute-with-clang.patch37
-rw-r--r--meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch33
-rw-r--r--meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.2.bb (renamed from meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb)7
4 files changed, 39 insertions, 166 deletions
diff --git a/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-retry-elf-parsing-as-long-as-needed.patch b/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-retry-elf-parsing-as-long-as-needed.patch
deleted file mode 100644
index 8d5b8b6cbb..0000000000
--- a/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-retry-elf-parsing-as-long-as-needed.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From 7a8c6a06c86e133e4346b1dc66483bd8d0d3c716 Mon Sep 17 00:00:00 2001
-From: John Ogness <john.ogness@linutronix.de>
-Date: Tue, 24 Aug 2021 21:10:43 +0200
-Subject: [PATCH] minicoredumper: retry elf parsing as long as needed
-
-As was reported in github issue #2 ("maximum number of tries
-insufficient, in rare cases, for elf parse"), the number of retries
-for parsing a process may be insufficient. Rather than setting an
-upper limit on the maximum number of retries, track the number of
-headers seen. As long as the number of seen headers is greater than
-the previous try, try again.
-
-In order to avoid introducing any new issues, preserve the behavior
-of retrying at least 10 times, even if no new headers are seen.
-
-Reported-by: github.com/ssajal-wr
-Signed-off-by: John Ogness <john.ogness@linutronix.de>
-
-Upstream-Status: Backport [7a8c6a06c86e133e4346b1dc66483bd8d0d3c716]
-
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- src/minicoredumper/corestripper.c | 30 +++++++++++++++++++++++-------
- 1 file changed, 23 insertions(+), 7 deletions(-)
-
-diff --git a/src/minicoredumper/corestripper.c b/src/minicoredumper/corestripper.c
-index d96d1df..c96b350 100644
---- a/src/minicoredumper/corestripper.c
-+++ b/src/minicoredumper/corestripper.c
-@@ -761,7 +761,7 @@ static int init_log(struct dump_info *di)
- typedef int elf_parse_cb(struct dump_info *di, Elf *elf, GElf_Phdr *phdr);
-
- static int do_elf_ph_parse(struct dump_info *di, GElf_Phdr *type,
-- elf_parse_cb *callback)
-+ elf_parse_cb *callback, size_t *phnum_found)
- {
- GElf_Ehdr ehdr_mem;
- GElf_Ehdr *ehdr;
-@@ -770,6 +770,9 @@ static int do_elf_ph_parse(struct dump_info *di, GElf_Phdr *type,
- size_t phnum;
- size_t cnt;
-
-+ if (phnum_found)
-+ *phnum_found = 0;
-+
- /* start from beginning of core */
- if (lseek64(di->elf_fd, 0, SEEK_SET) == -1) {
- info("lseek failed: %s", strerror(errno));
-@@ -809,6 +812,9 @@ static int do_elf_ph_parse(struct dump_info *di, GElf_Phdr *type,
- goto out;
- }
-
-+ if (phnum_found)
-+ *phnum_found = phnum;
-+
- for (cnt = 0; cnt < phnum; cnt++) {
- GElf_Phdr phdr_mem;
- GElf_Phdr *phdr;
-@@ -891,7 +897,7 @@ static int vma_cb(struct dump_info *di, Elf *elf, GElf_Phdr *phdr)
- /*
- * Tries to parse the found ELF headers and reads all vmas from it.
- */
--static int parse_vma_info(struct dump_info *di)
-+static int parse_vma_info(struct dump_info *di, size_t *phnum_found)
- {
- unsigned long min_off = ULONG_MAX;
- unsigned long max_len = 0;
-@@ -911,7 +917,7 @@ static int parse_vma_info(struct dump_info *di)
- memset(&type, 0, sizeof(type));
- type.p_type = PT_LOAD;
- type.p_flags = PF_R;
-- if (do_elf_ph_parse(di, &type, vma_cb) != 0)
-+ if (do_elf_ph_parse(di, &type, vma_cb, phnum_found) != 0)
- return -1;
-
- for (v = di->vma; v; v = v->next) {
-@@ -1614,8 +1620,10 @@ int add_core_data(struct dump_info *di, off64_t dest_offset, size_t len,
- */
- static int init_src_core(struct dump_info *di, int src)
- {
-+ size_t last_phnum = 0;
- int tries = 0;
- int ret = -1;
-+ size_t phnum;
- size_t len;
- char *buf;
- long pos;
-@@ -1642,7 +1650,7 @@ again:
- goto out;
-
- /* try to elf-parse the core to read vma info */
-- ret = parse_vma_info(di);
-+ ret = parse_vma_info(di, &phnum);
-
- /* restore our position */
- if (lseek64(di->elf_fd, pos, SEEK_SET) == -1)
-@@ -1653,9 +1661,17 @@ again:
-
- tries++;
-
-- /* maybe try again */
-- if (tries < 10)
-+ if (phnum > last_phnum) {
-+ /* new headers found, keep trying */
-+ last_phnum = phnum;
- goto again;
-+ } else if (tries < 10) {
-+ /*
-+ * even if no new headers are found,
-+ * retry at least 10 times
-+ */
-+ goto again;
-+ }
-
- goto out;
- }
-@@ -2106,7 +2122,7 @@ static int dump_stacks(struct dump_info *di)
- /* find and set the first task */
- memset(&type, 0, sizeof(type));
- type.p_type = PT_NOTE;
-- do_elf_ph_parse(di, &type, note_cb);
-+ do_elf_ph_parse(di, &type, note_cb, NULL);
- }
-
- if (di->first_pid)
---
-2.25.1
-
diff --git a/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper_demo-Use-optnone-attribute-with-clang.patch b/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper_demo-Use-optnone-attribute-with-clang.patch
new file mode 100644
index 0000000000..05371e5cd6
--- /dev/null
+++ b/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper_demo-Use-optnone-attribute-with-clang.patch
@@ -0,0 +1,37 @@
+From abaac31d1cb4d0ba0e8e9ef7f344e62de3b150de Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 4 Feb 2023 16:50:46 -0800
+Subject: [PATCH] minicoredumper_demo: Use 'optnone' attribute with clang
+
+clang does not support optimize("On") yet, therefore use optnone which
+should give intended results with clang compiler
+
+Upstream-Status: Submitted [https://github.com/diamon/minicoredumper/pull/7]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/minicoredumper_demo/main.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/src/minicoredumper_demo/main.c b/src/minicoredumper_demo/main.c
+index 65aac46..e60eb82 100644
+--- a/src/minicoredumper_demo/main.c
++++ b/src/minicoredumper_demo/main.c
+@@ -11,8 +11,13 @@
+ #include <sys/types.h>
+
+ #include "minicoredumper.h"
+-
+-int __attribute__((optimize("O0"))) main(int argc, char *argv[])
++int
++#ifdef __clang__
++__attribute__((optnone))
++#else
++__attribute__((optimize("O0")))
++#endif
++main(int argc, char *argv[])
+ {
+ char *str1 = "This is string 1.";
+ unsigned long val1 = 0x1abc123f;
+--
+2.39.1
+
diff --git a/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch b/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch
deleted file mode 100644
index 455e6f3181..0000000000
--- a/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 5895caba6573e84f73f159d9e84cd1aa7e969f18 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 9 May 2021 14:37:00 -0700
-Subject: [PATCH] replace pthread_mutexattr_setrobust_np with
- pthread_mutexattr_setrobust
-
-This is now part of standard POSIX function [1]
-
-Upstream-Status: Submitted [https://github.com/diamon/minicoredumper/pull/3]
-
-[1] https://man7.org/linux/man-pages/man3/pthread_mutexattr_setrobust_np.3.html
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/minicoredumper_regd/daemon.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/minicoredumper_regd/daemon.c b/src/minicoredumper_regd/daemon.c
-index 115ec92..b9ad1ea 100644
---- a/src/minicoredumper_regd/daemon.c
-+++ b/src/minicoredumper_regd/daemon.c
-@@ -224,7 +224,7 @@ static int setup_shm(void)
-
- pthread_mutexattr_init(&attr);
- pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT);
-- pthread_mutexattr_setrobust_np(&attr, PTHREAD_MUTEX_ROBUST_NP);
-+ pthread_mutexattr_setrobust(&attr, PTHREAD_MUTEX_ROBUST);
- pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED);
- pthread_mutex_init(&sh->m, &attr);
-
---
-2.31.1
-
diff --git a/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb b/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.2.bb
index 992de014f4..5763f845a6 100644
--- a/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb
+++ b/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.2.bb
@@ -9,15 +9,12 @@ DEPENDS = "elfutils dbus dbus-glib-native glib-2.0 dbus-glib util-linux json-c"
inherit autotools pkgconfig ptest systemd update-rc.d
-SRCREV = "16a0d44f1725eaa93096eaa0e086f42ef4c2712c"
-
-PR .= "+git${SRCPV}"
+SRCREV = "0bed11b3d69877ce59b1a71359349af60f2009ff"
SRC_URI = "git://github.com/diamon/minicoredumper;protocol=https;branch=master \
- file://0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch \
+ file://0001-minicoredumper_demo-Use-optnone-attribute-with-clang.patch \
file://minicoredumper.service \
file://minicoredumper.init \
- file://0001-minicoredumper-retry-elf-parsing-as-long-as-needed.patch \
file://run-ptest \
"