]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
strace: Define sched_attr conditionally
authorKhem Raj <raj.khem@gmail.com>
Mon, 30 Sep 2024 22:29:12 +0000 (15:29 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 1 Oct 2024 11:40:34 +0000 (12:40 +0100)
So that it does not conflict with glibc 2.41+ newly added definitions

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/strace/strace/0001-sched_attr-Define-conditionally-on-SCHED_ATTR_SIZE_V.patch [new file with mode: 0644]
meta/recipes-devtools/strace/strace_6.11.bb

diff --git a/meta/recipes-devtools/strace/strace/0001-sched_attr-Define-conditionally-on-SCHED_ATTR_SIZE_V.patch b/meta/recipes-devtools/strace/strace/0001-sched_attr-Define-conditionally-on-SCHED_ATTR_SIZE_V.patch
new file mode 100644 (file)
index 0000000..b8d5779
--- /dev/null
@@ -0,0 +1,49 @@
+From d162a1d6b18348955f9989f150c86a68af096362 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 30 Sep 2024 15:17:16 -0700
+Subject: [PATCH] sched_attr: Define conditionally on SCHED_ATTR_SIZE_VER0
+
+glibc 2.41+ has added [1] definitions for sched_setattr and sched_getattr functions
+and struct sched_attr. Therefore, it needs to be checked for here as well before
+defining sched_attr
+
+Fixes builds with glibc/trunk
+
+In file included from ../../strace-6.11/src/sched.c:14:
+../../strace-6.11/src/sched_attr.h:16:8: error: redefinition of 'sched_attr'
+   16 | struct sched_attr {
+      |        ^
+/mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux/strace/6.11/recipe-sysroot/usr/include/linux/sched/types.h:98:8: note: previous definition is here
+   98 | struct sched_attr {
+      |        ^
+
+[1] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8
+
+Upstream-Status: Submitted [https://github.com/strace/strace/pull/318]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/sched_attr.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/sched_attr.h b/src/sched_attr.h
+index 26c53172f..a5b5d94ce 100644
+--- a/src/sched_attr.h
++++ b/src/sched_attr.h
+@@ -11,6 +11,8 @@
+ # include <stdint.h>
++# ifndef SCHED_ATTR_SIZE_VER0
++
+ struct sched_attr {
+       uint32_t size;
+       uint32_t sched_policy;
+@@ -25,6 +27,8 @@ struct sched_attr {
+       uint32_t sched_util_max;
+ };
++# endif /* SCHED_ATTR_SIZE_VER0 */
++
+ # define SCHED_ATTR_MIN_SIZE  48
+ # ifndef SCHED_ATTR_SIZE_VER1
+ #  define SCHED_ATTR_SIZE_VER1  56
index d98b5fdec9a5184ab938413a3749c65214ce1e30..45e1c26627f00d6d12e80818a4bd3b11f19e929e 100644 (file)
@@ -14,6 +14,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
            file://skip-load.patch \
            file://0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch \
            file://0002-tests-Replace-off64_t-with-off_t.patch \
+           file://0001-sched_attr-Define-conditionally-on-SCHED_ATTR_SIZE_V.patch \
            "
 SRC_URI[sha256sum] = "83262583a3529f02c3501aa8b8ac772b4cbc03dc934e98bab6e4883626e283a5"