rt-tests: backport patch that enable build for all archs

Upstream rt-tests has applied a patch that allow builds for all archs.
The problem is that oslat using frc() that is not present for all archs.
With this backported patch oslat is building but in run-time an error
message is dumped if frc() is not present.

(From OE-Core rev: bf5b9c531e0b5199b3d406e73d5592f215f482ce)

Signed-off-by: Peter Bergin <peter@berginkonsult.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Peter Bergin
2020-11-11 23:15:02 +01:00
committed by Richard Purdie
parent 345b5cf155
commit 361c1fb811
2 changed files with 53 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
From 165b597e3003c6870f5980e8902014d9344e6cf3 Mon Sep 17 00:00:00 2001
From: Peter Xu <peterx@redhat.com>
Date: Thu, 1 Oct 2020 14:47:26 -0400
Subject: [PATCH] rt-tests: oslat: Allow build for not supported archs
Now rt-tests won't build for archs other than x86/i386/ppc64 after oslat is
merged. Instead of failing the build, let's make it pass. However, whenever
oslat is executed, instead of running the real program, dump an error message,
so that people can try to implement the frc() function for it when there's a
real need for the new arch.
Upstream-Status: Backport [https://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git/commit/?id=165b597e3003c6870f5980e8902014d9344e6cf3]
Signed-off-by: Peter Xu <peterx@redhat.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Peter Bergin <peter@berginkonsult.se>
---
src/oslat/oslat.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c
index f1a82f2..a8b6155 100644
--- a/src/oslat/oslat.c
+++ b/src/oslat/oslat.c
@@ -69,7 +69,9 @@ static inline void frc(uint64_t *pval)
__asm__ __volatile__("mfspr %0, 268\n" : "=r" (*pval));
}
# else
-# error Need frc() for this platform.
+# define relax() do { } while (0)
+# define frc(x)
+# define FRC_MISSING
# endif
#else
# error Need to add support for this compiler.
@@ -810,6 +812,12 @@ int main(int argc, char *argv[])
int i, n_cores;
cpu_set_t cpu_set;
+#ifdef FRC_MISSING
+ printf("This architecture is not yet supported. "
+ "Please implement frc() function first for %s.\n", argv[0]);
+ return 0;
+#endif
+
CPU_ZERO(&cpu_set);
g.app_name = argv[0];
--
2.25.1

View File

@@ -12,6 +12,7 @@ SRC_URI += " \
file://run-ptest \
file://rt_bmark.py \
file://0001-Makefile-Allow-for-CC-and-AR-to-be-overridden.patch \
file://0001-rt-tests-oslat-Allow-build-for-not-supported-archs.patch \
"
# rt-tests needs PI mutex support in libc