Signed-off-by: Khem Raj <raj.k...@gmail.com>
---
 ...ed_attr-Do-not-define-for-glibc-2.41.patch | 44 +++++++++++++++++++
 meta/recipes-rt/rt-tests/rt-tests_git.bb      |  1 +
 2 files changed, 45 insertions(+)
 create mode 100644 
meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch

diff --git 
a/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch
 
b/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch
new file mode 100644
index 00000000000..915f8baa61b
--- /dev/null
+++ 
b/meta/recipes-rt/rt-tests/files/0001-sched_attr-Do-not-define-for-glibc-2.41.patch
@@ -0,0 +1,44 @@
+From e1f5f9379a68471c9f5fb0859e87dd84001b0b6f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.k...@gmail.com>
+Date: Tue, 28 Jan 2025 15:03:59 -0800
+Subject: [PATCH] sched_attr: Do not define for glibc >= 2.41
+
+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
+
+Define sched_attr conditionally on SCHED_ATTR_SIZE_VER0
+
+Fixes builds with glibc/trunk
+
+[1] 
https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8
+
+Upstream-Status: Submitted 
[https://lore.kernel.org/linux-rt-users/20250128230838.2311298-1-raj.k...@gmail.com/T/#u]
+Signed-off-by: Khem Raj <raj.k...@gmail.com>
+Cc: Clark Williams <willi...@redhat.com>
+Cc: John Kacur <jka...@redhat.com>
+Cc: rt-users <linux-rt-us...@vger.kernel.org>
+---
+ src/include/rt-sched.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/include/rt-sched.h b/src/include/rt-sched.h
+index 80171c7..9cf0e3a 100644
+--- a/src/include/rt-sched.h
++++ b/src/include/rt-sched.h
+@@ -42,6 +42,8 @@
+ #define __NR_sched_getattr            275
+ #endif
+ 
++/* sched_attr is not defined in glibc < 2.41 */
++#ifndef SCHED_ATTR_SIZE_VER0
+ struct sched_attr {
+       uint32_t size;
+       uint32_t sched_policy;
+@@ -68,4 +70,6 @@ int sched_getattr(pid_t pid,
+                 unsigned int size,
+                 unsigned int flags);
+ 
++#endif /* SCHED_ATTR_SIZE_VER0 */
++
+ #endif /* __RT_SCHED_H__ */
diff --git a/meta/recipes-rt/rt-tests/rt-tests_git.bb 
b/meta/recipes-rt/rt-tests/rt-tests_git.bb
index 1f48e143d47..5fa980dbdf1 100644
--- a/meta/recipes-rt/rt-tests/rt-tests_git.bb
+++ b/meta/recipes-rt/rt-tests/rt-tests_git.bb
@@ -13,6 +13,7 @@ SRC_URI += " \
             file://run-ptest \
             file://rt_bmark.py \
             file://0001-Makefile-Allow-for-CC-and-AR-to-be-overridden.patch \
+            file://0001-sched_attr-Do-not-define-for-glibc-2.41.patch \
            "
 
 # rt-tests needs PI mutex support in libc
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#210338): 
https://lists.openembedded.org/g/openembedded-core/message/210338
Mute This Topic: https://lists.openembedded.org/mt/110869360/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to