summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Kanzenbach <kurt@kmk-computers.de>2023-10-14 09:44:52 +0200
committerViorel Munteanu <ceamac@gentoo.org>2023-12-27 09:50:25 +0200
commitbe7efdf591a471a0b53ad7714ca56f0dd3aead96 (patch)
treed3da626d39891456d3ee73600eb5cc3ee1e060ea /dev-util
parentdev-util/rt-tests: add 2.6 (diff)
downloadgentoo-be7efdf591a471a0b53ad7714ca56f0dd3aead96.tar.gz
gentoo-be7efdf591a471a0b53ad7714ca56f0dd3aead96.tar.bz2
gentoo-be7efdf591a471a0b53ad7714ca56f0dd3aead96.zip
dev-util/rt-tests: drop 2.5
Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de> Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/rt-tests/Manifest1
-rw-r--r--dev-util/rt-tests/files/rt-tests-2.5-musl.patch342
-rw-r--r--dev-util/rt-tests/rt-tests-2.5.ebuild38
3 files changed, 0 insertions, 381 deletions
diff --git a/dev-util/rt-tests/Manifest b/dev-util/rt-tests/Manifest
index ca23204c7a1d..8525d3d1e94e 100644
--- a/dev-util/rt-tests/Manifest
+++ b/dev-util/rt-tests/Manifest
@@ -1,2 +1 @@
-DIST rt-tests-2.5.tar.xz 104596 BLAKE2B 3c03be9fb58ede744b6521cd74cef923f667c94ad8a3abb3d88efa7733f7672c8151b22e122499d1811f16ccd5a9335110eeb6c7c722c9899c369c912112f3b2 SHA512 a9966b6da89a9778f668faee5c347024a43bf978826bf16f0f8034acbf383eb688c6962e1de80e7efd34a5a0c67cb7c37ed5822979676b76a1e725d620bfd391
DIST rt-tests-2.6.tar.xz 104996 BLAKE2B 40b898a0ecf512eafafa277857566cea358277f4fd6aca2595077409dbbb1c2eb4c7ed5ea1b61a378506eca4f989527d7c5fb94d9c3a16d7b0286cc940496cc8 SHA512 0cfb93ef8718b8e291a23963ef8e5bf1092b5f1c377f220d35005c0fdc7982ac074da824cb26ad5b2c71a2ebadd8bf753259c6f3ca9e00f42d9198e2dbc5999a
diff --git a/dev-util/rt-tests/files/rt-tests-2.5-musl.patch b/dev-util/rt-tests/files/rt-tests-2.5-musl.patch
deleted file mode 100644
index a7aca4392ebb..000000000000
--- a/dev-util/rt-tests/files/rt-tests-2.5-musl.patch
+++ /dev/null
@@ -1,342 +0,0 @@
-From 0b7a1e0d3463aa8aa4b7dcad0ec154e658d68036 Mon Sep 17 00:00:00 2001
-From: Kurt Kanzenbach <kurt@kmk-computers.de>
-Date: Wed, 1 Apr 2020 20:15:24 +0200
-Subject: [PATCH] all: Fix musl build
-
-There are a few problems:
-
- * pi stress: pthread_attr_setaffinity_np() is not supported
- * cyclictest: SIGEV_THREAD_ID is not supported
- * hackbench: Fix include
- * all: Fix sched_* calls
-
-With these changes applied, the rt-tests seem to run fine.
-
-Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de>
----
- Makefile | 5 --
- src/backfire/sendme.c | 1
- src/cyclictest/cyclictest.c | 68 ++++------------------------------
- src/hackbench/hackbench.c | 4 +-
- src/include/musl.h | 28 ++++++++++++++
- src/lib/rt-utils.c | 1
- src/pi_tests/tst-mutexpi10.c | 2 +
- src/pmqtest/pmqtest.c | 1
- src/ptsematest/ptsematest.c | 1
- src/rt-migrate-test/rt-migrate-test.c | 1
- src/sched_deadline/cyclicdeadline.c | 1
- 11 files changed, 47 insertions(+), 66 deletions(-)
- create mode 100644 src/include/musl.h
-
---- a/Makefile
-+++ b/Makefile
-@@ -7,7 +7,6 @@ OBJDIR = bld
- sources = cyclictest.c \
- hackbench.c \
- pip_stress.c \
-- pi_stress.c \
- pmqtest.c \
- ptsematest.c \
- rt-migrate-test.c \
-@@ -42,7 +41,6 @@ ifeq (${PYLIB},)
- endif
-
- MANPAGES = src/cyclictest/cyclictest.8 \
-- src/pi_tests/pi_stress.8 \
- src/ptsematest/ptsematest.8 \
- src/rt-migrate-test/rt-migrate-test.8 \
- src/sigwaittest/sigwaittest.8 \
-@@ -130,9 +128,6 @@ deadline_test: $(OBJDIR)/deadline_test.o
- signaltest: $(OBJDIR)/signaltest.o $(OBJDIR)/librttest.a $(OBJDIR)/librttestnuma.a
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LIBS) $(RTTESTLIB) $(RTTESTNUMA)
-
--pi_stress: $(OBJDIR)/pi_stress.o $(OBJDIR)/librttest.a
-- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LIBS) $(RTTESTLIB)
--
- hwlatdetect: src/hwlatdetect/hwlatdetect.py
- chmod +x src/hwlatdetect/hwlatdetect.py
- ln -s src/hwlatdetect/hwlatdetect.py hwlatdetect
---- a/src/backfire/sendme.c
-+++ b/src/backfire/sendme.c
-@@ -29,6 +29,7 @@
- #include <string.h>
- #include <time.h>
- #include <errno.h>
-+#include "musl.h"
- #include "rt-utils.h"
- #include "rt-get_cpu.h"
-
---- a/src/cyclictest/cyclictest.c
-+++ b/src/cyclictest/cyclictest.c
-@@ -33,6 +33,7 @@
- #include <sys/utsname.h>
- #include <sys/mman.h>
- #include <sys/syscall.h>
-+#include "musl.h"
- #include "rt_numa.h"
-
- #include "rt-utils.h"
-@@ -546,12 +547,8 @@ static void *timerthread(void *param)
- {
- struct thread_param *par = param;
- struct sched_param schedp;
-- struct sigevent sigev;
- sigset_t sigset;
-- timer_t timer;
- struct timespec now, next, interval, stop = { 0 };
-- struct itimerval itimer;
-- struct itimerspec tspec;
- struct thread_stat *stat = par->stats;
- int stopped = 0;
- cpu_set_t mask;
-@@ -580,14 +577,6 @@ static void *timerthread(void *param)
- sigaddset(&sigset, par->signal);
- sigprocmask(SIG_BLOCK, &sigset, NULL);
-
-- if (par->mode == MODE_CYCLIC) {
-- sigev.sigev_notify = SIGEV_THREAD_ID | SIGEV_SIGNAL;
-- sigev.sigev_signo = par->signal;
-- sigev.sigev_notify_thread_id = stat->tid;
-- timer_create(par->clock, &sigev, &timer);
-- tspec.it_interval = interval;
-- }
--
- memset(&schedp, 0, sizeof(schedp));
- schedp.sched_priority = par->prio;
- if (setscheduler(0, par->policy, &schedp))
-@@ -641,20 +630,6 @@ static void *timerthread(void *param)
- stop = now;
- stop.tv_sec += duration;
- }
-- if (par->mode == MODE_CYCLIC) {
-- if (par->timermode == TIMER_ABSTIME)
-- tspec.it_value = next;
-- else
-- tspec.it_value = interval;
-- timer_settime(timer, par->timermode, &tspec, NULL);
-- }
--
-- if (par->mode == MODE_SYS_ITIMER) {
-- itimer.it_interval.tv_sec = interval.tv_sec;
-- itimer.it_interval.tv_usec = interval.tv_nsec / 1000;
-- itimer.it_value = itimer.it_interval;
-- setitimer(ITIMER_REAL, &itimer, NULL);
-- }
-
- stat->threadstarted++;
-
-@@ -662,16 +637,10 @@ static void *timerthread(void *param)
-
- uint64_t diff;
- unsigned long diff_smi = 0;
-- int sigs, ret;
-+ int ret;
-
- /* Wait for next period */
- switch (par->mode) {
-- case MODE_CYCLIC:
-- case MODE_SYS_ITIMER:
-- if (sigwait(&sigset, &sigs) < 0)
-- goto out;
-- break;
--
- case MODE_CLOCK_NANOSLEEP:
- if (par->timermode == TIMER_ABSTIME) {
- ret = clock_nanosleep(par->clock, TIMER_ABSTIME,
-@@ -792,11 +761,6 @@ static void *timerthread(void *param)
-
- next.tv_sec += interval.tv_sec;
- next.tv_nsec += interval.tv_nsec;
-- if (par->mode == MODE_CYCLIC) {
-- int overrun_count = timer_getoverrun(timer);
-- next.tv_sec += overrun_count * interval.tv_sec;
-- next.tv_nsec += overrun_count * interval.tv_nsec;
-- }
- tsnorm(&next);
-
- while (tsgreater(&now, &next)) {
-@@ -821,17 +785,6 @@ out:
- pthread_mutex_unlock(&refresh_on_max_lock);
- }
-
-- if (par->mode == MODE_CYCLIC)
-- timer_delete(timer);
--
-- if (par->mode == MODE_SYS_ITIMER) {
-- itimer.it_value.tv_sec = 0;
-- itimer.it_value.tv_usec = 0;
-- itimer.it_interval.tv_sec = 0;
-- itimer.it_interval.tv_usec = 0;
-- setitimer(ITIMER_REAL, &itimer, NULL);
-- }
--
- /* close msr file */
- if (smi)
- close(par->msr_fd);
-@@ -1227,7 +1180,8 @@ static void process_options(int argc, ch
- case OPT_VERBOSE: verbose = 1; break;
- case 'x':
- case OPT_POSIX_TIMERS:
-- use_nanosleep = MODE_CYCLIC; break;
-+ fatal("--posix_timers is not available on your libc\n");
-+ break;
- case '?':
- case OPT_HELP:
- display_help(0); break;
-@@ -1260,13 +1214,6 @@ static void process_options(int argc, ch
- }
- }
-
-- if ((use_system == MODE_SYS_OFFSET) && (use_nanosleep == MODE_CYCLIC)) {
-- warn("The system option requires clock_nanosleep\n");
-- warn("and is not compatible with posix_timers\n");
-- warn("Using clock_nanosleep\n");
-- use_nanosleep = MODE_CLOCK_NANOSLEEP;
-- }
--
- /* if smp wasn't requested, test for numa automatically */
- if (!smp) {
- numa = numa_initialize();
-@@ -1991,7 +1938,6 @@ int main(int argc, char **argv)
-
- }
-
--
- mode = use_nanosleep + use_system;
-
- sigemptyset(&sigset);
-@@ -2042,6 +1988,7 @@ int main(int argc, char **argv)
- void *currstk;
- size_t stksize;
- int node_cpu = cpu;
-+ int err;
-
- if (node_cpu == -1)
- node_cpu = cpu_for_thread_ua(i, max_cpus);
-@@ -2050,11 +1997,12 @@ int main(int argc, char **argv)
- node = rt_numa_numa_node_of_cpu(node_cpu);
-
- /* get the stack size set for this thread */
-- if (pthread_attr_getstack(&attr, &currstk, &stksize))
-+ err = pthread_attr_getstack(&attr, &currstk, &stksize);
-+ if (err != EINVAL)
- fatal("failed to get stack size for thread %d\n", i);
-
- /* if the stack size is zero, set a default */
-- if (stksize == 0)
-+ if (err == EINVAL || stksize == 0)
- stksize = PTHREAD_STACK_MIN * 2;
-
- /* allocate memory for a stack on appropriate node */
---- a/src/hackbench/hackbench.c
-+++ b/src/hackbench/hackbench.c
-@@ -25,7 +25,7 @@
- #include <sys/socket.h>
- #include <sys/wait.h>
- #include <sys/time.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <limits.h>
-@@ -34,6 +34,8 @@
- #include <setjmp.h>
- #include <sched.h>
-
-+#include "musl.h"
-+
- static unsigned int datasize = 100;
- static unsigned int loops = 100;
- static unsigned int num_groups = 10;
---- /dev/null
-+++ b/src/include/musl.h
-@@ -0,0 +1,28 @@
-+/*
-+ * Copyright (C) 2020 Kurt Kanzenbach <kurt@kmk-computers.de>
-+ * Time-stamp: <2020-04-04 10:54:01 kurt>
-+ */
-+
-+#ifndef _MUSL_H_
-+#define _MUSL_H_
-+
-+#include <unistd.h>
-+#include <sys/syscall.h>
-+
-+/*
-+ * Musl someshow defines sched_* to ENOSYS which is not correct ...
-+ * See commit 1e21e78bf7a5 ("add support for thread scheduling (POSIX TPS option)")
-+ *
-+ * Workaround: define them to syscall(...)
-+ */
-+
-+#define sched_getparam(pid, param) \
-+ syscall(SYS_sched_getparam, pid, param)
-+#define sched_setparam(pid, param) \
-+ syscall(SYS_sched_setparam, pid, param)
-+#define sched_getscheduler(pid) \
-+ syscall(SYS_sched_getscheduler, pid)
-+#define sched_setscheduler(pid, policy, param) \
-+ syscall(SYS_sched_setscheduler, pid, policy, param)
-+
-+#endif /* _MUSL_H_ */
---- a/src/lib/rt-utils.c
-+++ b/src/lib/rt-utils.c
-@@ -24,6 +24,7 @@
- #include <time.h>
- #include <sys/time.h>
-
-+#include "musl.h"
- #include "rt-utils.h"
- #include "rt-sched.h"
- #include "rt-error.h"
---- a/src/pi_tests/tst-mutexpi10.c
-+++ b/src/pi_tests/tst-mutexpi10.c
-@@ -35,6 +35,8 @@
- #include <string.h>
- #include <signal.h>
-
-+#include "musl.h"
-+
- /* test timeout */
- #define TIMEOUT 2
-
---- a/src/pmqtest/pmqtest.c
-+++ b/src/pmqtest/pmqtest.c
-@@ -24,6 +24,7 @@
- #include <pthread.h>
- #include <inttypes.h>
-
-+#include "musl.h"
- #include "rt-utils.h"
- #include "rt-get_cpu.h"
- #include "rt-error.h"
---- a/src/ptsematest/ptsematest.c
-+++ b/src/ptsematest/ptsematest.c
-@@ -22,6 +22,7 @@
- #include <pthread.h>
- #include <inttypes.h>
-
-+#include "musl.h"
- #include "rt-utils.h"
- #include "rt-get_cpu.h"
- #include "rt-error.h"
---- a/src/rt-migrate-test/rt-migrate-test.c
-+++ b/src/rt-migrate-test/rt-migrate-test.c
-@@ -27,6 +27,7 @@
-
- #include <linux/unistd.h>
-
-+#include "musl.h"
- #include "rt-utils.h"
-
- int nr_tasks;
---- a/src/sched_deadline/cyclicdeadline.c
-+++ b/src/sched_deadline/cyclicdeadline.c
-@@ -30,6 +30,7 @@
- #include <linux/unistd.h>
- #include <linux/magic.h>
-
-+#include "musl.h"
- #include "rt-utils.h"
- #include "rt-sched.h"
- #include "rt-error.h"
diff --git a/dev-util/rt-tests/rt-tests-2.5.ebuild b/dev-util/rt-tests/rt-tests-2.5.ebuild
deleted file mode 100644
index 503b4965a276..000000000000
--- a/dev-util/rt-tests/rt-tests-2.5.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit python-single-r1 toolchain-funcs
-
-DESCRIPTION="A collection of latency testing tools for the linux(-rt) kernel"
-HOMEPAGE="https://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git/"
-SRC_URI="
- https://kernel.org/pub/linux/utils/rt-tests/${P}.tar.xz
- https://kernel.org/pub/linux/utils/rt-tests/older/${P}.tar.xz"
-
-LICENSE="GPL-2 GPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="${PYTHON_DEPS}
- sys-process/numactl"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
- use elibc_musl && eapply "${FILESDIR}/${P}-musl.patch"
-}
-
-src_compile() {
- emake CC="$(tc-getCC)" AR="$(tc-getAR)"
-}
-
-src_install() {
- emake CC="$(tc-getCC)" prefix=/usr DESTDIR="${ED}" install
- python_fix_shebang "${ED}"
- python_optimize
-}