From b71c622bc8d8a4d4e7a53d92a3466e2291211aa2 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 30 Mar 2021 07:01:18 -0400 Subject: [PATCH] import rt-tests-1.10-3.el8 --- .gitignore | 2 +- .rt-tests.metadata | 2 +- ...ffinity-error-on-large-NUMA-machines.patch | 84 --------- ...oslat-Use-cpuset-size-as-upper-bound.patch | 38 +++++ ...low-scheduling-on-all-possible-cores.patch | 73 ++++++++ ...ts-oslat-Allocate-memory-for-cpu_set.patch | 47 +++++ .../rt-tests-oslat-print-version-string.patch | 54 ++++++ ...t-Fix-storing-unsigned-long-long-int.patch | 111 ------------ SPECS/rt-tests.spec | 160 +++++++++++++----- 9 files changed, 327 insertions(+), 244 deletions(-) delete mode 100644 SOURCES/cyclictest-Fix-setaffinity-error-on-large-NUMA-machines.patch create mode 100644 SOURCES/oslat-Use-cpuset-size-as-upper-bound.patch create mode 100644 SOURCES/oslat-allow-scheduling-on-all-possible-cores.patch create mode 100644 SOURCES/rt-tests-oslat-Allocate-memory-for-cpu_set.patch create mode 100644 SOURCES/rt-tests-oslat-print-version-string.patch delete mode 100644 SOURCES/rt-tests-queuelat-Fix-storing-unsigned-long-long-int.patch diff --git a/.gitignore b/.gitignore index d52a338..97a3fb3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/rt-tests-1.8.tar.xz +SOURCES/rt-tests-1.10.tar.xz diff --git a/.rt-tests.metadata b/.rt-tests.metadata index 77a85ed..d359e83 100644 --- a/.rt-tests.metadata +++ b/.rt-tests.metadata @@ -1 +1 @@ -50737a762ff27d6440798f10a33f720f476e1438 SOURCES/rt-tests-1.8.tar.xz +7befc28537ebfa23b989037da99dd4eb842ee9b6 SOURCES/rt-tests-1.10.tar.xz diff --git a/SOURCES/cyclictest-Fix-setaffinity-error-on-large-NUMA-machines.patch b/SOURCES/cyclictest-Fix-setaffinity-error-on-large-NUMA-machines.patch deleted file mode 100644 index 96084c2..0000000 --- a/SOURCES/cyclictest-Fix-setaffinity-error-on-large-NUMA-machines.patch +++ /dev/null @@ -1,84 +0,0 @@ -From b07c57b33e4e24e873e680b8327f9be4f321caa9 Mon Sep 17 00:00:00 2001 -From: Yunfeng Ye -Date: Wed, 22 Apr 2020 10:19:52 +0800 -Subject: [PATCH] cyclictest: Fix setaffinity error on large NUMA machines - -An Error occurs when run: ./cyclictest -v -t 5 -p 80 -i 1000 -a 3 - -On large NUMA machines still getting the following error -WARN: Couldn't setaffinity in main thread: Invalid argument - -Instead of calling numa_bitmask_alloc() with max_cpus, use -numa_allocate_cpumask() to fix this. - -Also, make sure numa_available() is called before any other calls to the -numa library. Depending on how the options were invoked this could -happen in parse_cpumask for example. Note, this did not seem to cause -any problems in practice, but let's adhere to the library contract. - -Signed-off-by: John Kacur ---- - src/cyclictest/cyclictest.c | 26 +++++++++++++++++++------- - 1 file changed, 19 insertions(+), 7 deletions(-) - -diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c -index c5f1fd46567a..79bb1cb71c68 100644 ---- a/src/cyclictest/cyclictest.c -+++ b/src/cyclictest/cyclictest.c -@@ -1135,7 +1135,7 @@ static void use_current_cpuset(const int max_cpus) - - pid = getpid(); - -- curmask = numa_bitmask_alloc(sizeof(struct bitmask)); -+ curmask = numa_allocate_cpumask(); - numa_sched_getaffinity(pid, curmask); - - /* Clear bits that are not set in both the cpuset from the environment, -@@ -1225,6 +1225,20 @@ enum option_values { - OPT_TRACEMARK, OPT_POSIX_TIMERS, - }; - -+/* numa_available() must be called before any other calls to the numa library */ -+static void numa_initialize(void) -+{ -+ static int is_initialized; -+ -+ if (is_initialized == 1) -+ return; -+ -+ if (numa_available() != -1) -+ numa = 1; -+ -+ is_initialized = 1; -+} -+ - /* Process commandline options */ - static void process_options (int argc, char *argv[], int max_cpus) - { -@@ -1288,6 +1302,7 @@ static void process_options (int argc, char *argv[], int max_cpus) - /* smp sets AFFINITY_USEALL in OPT_SMP */ - if (smp) - break; -+ numa_initialize(); - if (optarg != NULL) { - parse_cpumask(optarg, max_cpus); - setaffinity = AFFINITY_SPECIFIED; -@@ -1460,12 +1475,9 @@ static void process_options (int argc, char *argv[], int max_cpus) - /* if smp wasn't requested, test for numa automatically */ - if (!smp) { - #ifdef NUMA -- if (numa_available() != -1) { -- numa = 1; -- if (setaffinity == AFFINITY_UNSPECIFIED) { -- setaffinity = AFFINITY_USEALL; -- } -- } -+ numa_initialize(); -+ if (setaffinity == AFFINITY_UNSPECIFIED) -+ setaffinity = AFFINITY_USEALL; - #else - warn("cyclictest was not built with the numa option\n"); - numa = 0; --- -2.21.3 - diff --git a/SOURCES/oslat-Use-cpuset-size-as-upper-bound.patch b/SOURCES/oslat-Use-cpuset-size-as-upper-bound.patch new file mode 100644 index 0000000..415b023 --- /dev/null +++ b/SOURCES/oslat-Use-cpuset-size-as-upper-bound.patch @@ -0,0 +1,38 @@ +From 6d5aa2b00d41ecdb6eb1355309737647e177e5e6 Mon Sep 17 00:00:00 2001 +From: Daniel Wagner +Date: Wed, 10 Feb 2021 17:54:07 +0100 +Subject: [PATCH 2/3] oslat: Use cpuset size as upper bound + +To assign the threads to the correct CPU we need to use the cpuset +size as upper bound for the loop and not the number of threads. + +Fixes: 85b0763dacd9 ("oslat: Use parse_cpumask() from rt-numa.h") +Reported-by: Peter Xu +Signed-off-by: Daniel Wagner +Signed-off-by: John Kacur +--- + src/oslat/oslat.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c +index 7826c277f26d..2fe550b3ee12 100644 +--- a/src/oslat/oslat.c ++++ b/src/oslat/oslat.c +@@ -747,9 +747,12 @@ int main(int argc, char *argv[]) + n_cores = numa_bitmask_weight(cpu_set); + + TEST(threads = calloc(1, n_cores * sizeof(threads[0]))); +- for (i = 0; i < n_cores; ++i) +- if (numa_bitmask_isbitset(cpu_set, i) && move_to_core(i) == 0) ++ for (i = 0; n_cores && i < cpu_set->size; i++) { ++ if (numa_bitmask_isbitset(cpu_set, i) && move_to_core(i) == 0) { + threads[g.n_threads_total++].core_i = i; ++ n_cores--; ++ } ++ } + + if (numa_bitmask_isbitset(cpu_set, 0) && g.rtprio) + printf("WARNING: Running SCHED_FIFO workload on CPU 0 may hang the thread\n"); +-- +2.26.2 + diff --git a/SOURCES/oslat-allow-scheduling-on-all-possible-cores.patch b/SOURCES/oslat-allow-scheduling-on-all-possible-cores.patch new file mode 100644 index 0000000..a80e336 --- /dev/null +++ b/SOURCES/oslat-allow-scheduling-on-all-possible-cores.patch @@ -0,0 +1,73 @@ +From 29884cff6352856fee9fffecb4a715efd70e08f5 Mon Sep 17 00:00:00 2001 +From: Peter Xu +Date: Thu, 18 Feb 2021 14:27:29 -0500 +Subject: [PATCH] oslat: Fix --cpu-list won't allow to schedule on all possible + cores + +parse_cpumask() is too strict for oslat, in that use_current_cpuset() will +filter out all the cores that are not allowed for current process to run. This +seems to be unnecessary at least for oslat. For example, the bash process that +runs the oslat program may have a sched affinity of 0-2, however it's still +legal to have it start a oslat thread running on the cores outside 0-2 as long +as the follow up sched_setaffinity() will succeed. + +numa_parse_cpustring_all() suites exactly for this case, which should already +have considered sysconf(_SC_NPROCESSORS_ONLN) limit. Use that instead. + +Since at it, also remove initialization of cpu_set variable otherwise it's +leaked in previous parse_cpumask too: numa_parse_cpustring_all() will return a +newly allocated buffer already. Quotting from manual: + + numa_parse_nodestring() parses a character string list of nodes into a bit + mask. The bit mask is allocated by numa_allocate_nodemask(). + + numa_parse_nodestring_all() is similar to numa_parse_nodestring, but can + parse all possible nodes, not only current nodeset. + +Cc: John Kacur +Cc: Daniel Wagner +Cc: Clark Williams +Reported-by: Pradipta Kumar Sahoo +Reported-by: Mike Stowell +Signed-off-by: Peter Xu +Signed-off-by: John Kacur +--- + src/oslat/oslat.c | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c +index b2c5373388fb..465a694cdd1d 100644 +--- a/src/oslat/oslat.c ++++ b/src/oslat/oslat.c +@@ -785,7 +785,6 @@ int main(int argc, char *argv[]) + struct thread *threads; + int i, n_cores; + struct bitmask *cpu_set = NULL; +- int max_cpus = sysconf(_SC_NPROCESSORS_ONLN); + + #ifdef FRC_MISSING + printf("This architecture is not yet supported. " +@@ -797,10 +796,6 @@ int main(int argc, char *argv[]) + exit(1); + } + +- cpu_set = numa_allocate_cpumask(); +- if (!cpu_set) +- fatal("oslat: Could not allocate cpumask\n"); +- + g.app_name = argv[0]; + g.rtprio = 0; + g.bucket_size = BUCKET_SIZE; +@@ -817,7 +812,8 @@ int main(int argc, char *argv[]) + if (!g.cpu_list) + g.cpu_list = strdup("all"); + +- if (parse_cpumask(g.cpu_list, max_cpus, &cpu_set) != 0) ++ cpu_set = numa_parse_cpustring_all(g.cpu_list); ++ if (!cpu_set) + fatal("oslat: parse_cpumask failed.\n"); + n_cores = numa_bitmask_weight(cpu_set); + +-- +2.26.2 + diff --git a/SOURCES/rt-tests-oslat-Allocate-memory-for-cpu_set.patch b/SOURCES/rt-tests-oslat-Allocate-memory-for-cpu_set.patch new file mode 100644 index 0000000..708e927 --- /dev/null +++ b/SOURCES/rt-tests-oslat-Allocate-memory-for-cpu_set.patch @@ -0,0 +1,47 @@ +From 5821269dde6a778b0af06c172bc2f19bbe324bda Mon Sep 17 00:00:00 2001 +From: John Kacur +Date: Fri, 12 Feb 2021 12:22:23 -0500 +Subject: [PATCH 3/3] rt-tests: oslat: Allocate memory for cpu_set + +- cpu_set is a pointer to a bitmask struct +Memory needs to be allocated for the struct, so call +numa_allocate_cpumask() + +- use rt-tests fatal to exit on error conditions + +Reviewed-by: Daniel Wagner +Signed-off-by: John Kacur +--- + src/oslat/oslat.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c +index 2fe550b3ee12..2a3be393a268 100644 +--- a/src/oslat/oslat.c ++++ b/src/oslat/oslat.c +@@ -727,6 +727,10 @@ int main(int argc, char *argv[]) + exit(1); + } + ++ cpu_set = numa_allocate_cpumask(); ++ if (!cpu_set) ++ fatal("oslat: Could not allocate cpumask\n"); ++ + g.app_name = argv[0]; + g.rtprio = 0; + g.bucket_size = BUCKET_SIZE; +@@ -742,8 +746,9 @@ int main(int argc, char *argv[]) + + if (!g.cpu_list) + g.cpu_list = strdup("all"); +- if (parse_cpumask(g.cpu_list, max_cpus, &cpu_set)) +- exit(1); ++ ++ if (parse_cpumask(g.cpu_list, max_cpus, &cpu_set) != 0) ++ fatal("oslat: parse_cpumask failed.\n"); + n_cores = numa_bitmask_weight(cpu_set); + + TEST(threads = calloc(1, n_cores * sizeof(threads[0]))); +-- +2.26.2 + diff --git a/SOURCES/rt-tests-oslat-print-version-string.patch b/SOURCES/rt-tests-oslat-print-version-string.patch new file mode 100644 index 0000000..ee1fd6b --- /dev/null +++ b/SOURCES/rt-tests-oslat-print-version-string.patch @@ -0,0 +1,54 @@ +From 2f4d564fb5557f7a420c183ddd3938647c231a8c Mon Sep 17 00:00:00 2001 +From: John Kacur +Date: Wed, 10 Feb 2021 22:18:41 -0500 +Subject: [PATCH 1/3] rt-tests: oslat: print version string + +During the streamlining of the command line options something went awry +with the version. The author of oslat wishes to always print the version +string. This allows us to just exit in the case of -v + +Fixes e411219d27b1 + +Reported-by: Pradipta Kumar Sahoo +Reported-by: Reported-by: Peter Xu + +Signed-off-by: John Kacur +--- + src/oslat/oslat.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c +index 5b7e0d5b5d5c..7826c277f26d 100644 +--- a/src/oslat/oslat.c ++++ b/src/oslat/oslat.c +@@ -512,7 +512,6 @@ static void handle_alarm(int code) + + static void usage(int error) + { +- printf("oslat V %1.2f\n", VERSION); + printf("Usage:\n" + "oslat \n\n" + "This is an OS latency detector by running busy loops on specified cores.\n" +@@ -657,8 +656,8 @@ static void parse_options(int argc, char *argv[]) + break; + case 'v': + /* +- * Because we always dump the version even before parsing options, +- * what we need to do is to quit.. ++ * We always print the version before parsing options ++ * so just exit + */ + exit(0); + break; +@@ -736,7 +735,7 @@ int main(int argc, char *argv[]) + g.workload_mem_size = WORKLOAD_MEM_SIZE; + /* Run the main thread on cpu0 by default */ + g.cpu_main_thread = 0; +- ++ printf("oslat V %1.2f\n", VERSION); + parse_options(argc, argv); + + TEST(mlockall(MCL_CURRENT | MCL_FUTURE) == 0); +-- +2.26.2 + diff --git a/SOURCES/rt-tests-queuelat-Fix-storing-unsigned-long-long-int.patch b/SOURCES/rt-tests-queuelat-Fix-storing-unsigned-long-long-int.patch deleted file mode 100644 index c3be1d2..0000000 --- a/SOURCES/rt-tests-queuelat-Fix-storing-unsigned-long-long-int.patch +++ /dev/null @@ -1,111 +0,0 @@ -From 41a3f9e53920d50b48c04593bfa3eb0e87fcf49f Mon Sep 17 00:00:00 2001 -From: John Kacur -Date: Tue, 12 May 2020 11:02:39 -0400 -Subject: [PATCH] rt-tests: queuelat: Fix storing unsigned long long in int - -queuelat can occassionally hang because of overflow mixing -unsigned long long and int - -Attaching to process 173912 -Reading symbols from /root/rt-tests/queuelat...done. -Reading symbols from /lib64/librt.so.1...Reading symbols from /usr/lib/debug/usr/lib64/librt-2.28.so.debug...done. -done. -Reading symbols from /lib64/libpthread.so.0...Reading symbols from /usr/lib/debug/usr/lib64/libpthread-2.28.so.debug...done. -done. -[Thread debugging using libthread_db enabled] -Using host libthread_db library "/lib64/libthread_db.so.1". -Reading symbols from /lib64/libc.so.6...Reading symbols from /usr/lib/debug/usr/lib64/libc-2.28.so.debug...done. -done. -Reading symbols from /lib64/ld-linux-x86-64.so.2...Reading symbols from /usr/lib/debug/usr/lib64/ld-2.28.so.debug...done. -done. -__memmove_avx_unaligned_erms () - at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:254 -254 rep movsb -(gdb) c -Continuing. - -Program received signal SIGSEGV, Segmentation fault. -0x0000000000400c02 in account (val=18446744071562067968) - at src/queuelat/queuelat.c:93 -93 buckets[bucket_nr]++; -(gdb) bt full - at src/queuelat/queuelat.c:93 - bucket_nr = -193273529 - a = 825932047802952 - b = 825925371232340 - dest = 0xf322b0 - src = 0xf4e3f0 - i = 45749 - delta = -2147483648 - loops = 50000 - time = 6500 - bucket_nr = 65 - n = 115000 - delta = 3500 - at src/queuelat/queuelat.c:671 - tsc_freq_mhz = 2398.5039999999999 - max_queue_len_f = 159.900284 - mvalue = 0x7ffc99d3021c "20000" - cvalue = 0x7ffc99d30225 "300" - pvalue = 0x7ffc99d30238 "6.1" - fvalue = 0x7ffc99d3022c "2398.504" - tvalue = 0x7ffc99d3023f "30" - qvalue = 0x0 - index = 0 - c = -1 - -Fix the above by declaring delta as an unsigned long long - -Signed-off-by: John Kacur ---- - src/queuelat/queuelat.c | 11 +++++------ - 1 file changed, 5 insertions(+), 6 deletions(-) - -diff --git a/src/queuelat/queuelat.c b/src/queuelat/queuelat.c -index 7e5e35768a8b..22b68a84d6ae 100644 ---- a/src/queuelat/queuelat.c -+++ b/src/queuelat/queuelat.c -@@ -354,9 +354,9 @@ static void trace_write(char *buf, int len) - - static void run_n(int n) - { -- u64 a, b; -+ u64 a, b, delta; - void *dest, *src; -- int i, delta, loops = 50000; -+ int i, loops = 50000; - - init_buckets(); - -@@ -445,9 +445,8 @@ static void print_exit_info(void) - - void main_loop(void) - { -- u64 a, b; -+ u64 a, b, delta; - void *dest, *src; -- int delta; - int queue_size = 0; - - trace_open(); -@@ -500,7 +499,7 @@ void main_loop(void) - continue; - - ret = sprintf(buf, "memmove block queue_size=%d queue_dec=%d" -- " queue_inc=%d delta=%d ns\n", queue_size, -+ " queue_inc=%d delta=%llu ns\n", queue_size, - nr_packets_drain_per_block, - nr_packets_fill, delta); - trace_write(buf, ret); -@@ -536,7 +535,7 @@ static void install_signals(void) - - int calculate_nr_packets_drain_per_block(void) - { -- int maxcount; -+ unsigned long long maxcount; - int i, time; - int found = 0; - int bucket_nr = find_highest_count_bucket(); --- -2.21.3 - diff --git a/SPECS/rt-tests.spec b/SPECS/rt-tests.spec index 3e5d4c7..c798bc2 100644 --- a/SPECS/rt-tests.spec +++ b/SPECS/rt-tests.spec @@ -5,7 +5,7 @@ Name: rt-tests # BuildRequires: numactl-devel # Numa argument to make: NUMA=1 # -Version: 1.8 +Version: 1.10 Release: 3%{?dist} License: GPLv2 Group: Development/Tools @@ -13,15 +13,18 @@ URL: git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git Source0: https://www.kernel.org/pub/linux/utils/rt-tests/%{name}-%{version}.tar.xz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -Obsoletes: cyclictest signaltest pi_tests ExclusiveArch: x86_64 -BuildRequires: numactl-devel python3-devel +BuildRequires: gcc +BuildRequires: numactl-devel +BuildRequires: python3-devel %{?__python3:Requires: %{__python3}} Requires: bash bc #Patches -Patch1: cyclictest-Fix-setaffinity-error-on-large-NUMA-machines.patch -Patch2: rt-tests-queuelat-Fix-storing-unsigned-long-long-int.patch +Patch1: rt-tests-oslat-print-version-string.patch +Patch2: oslat-Use-cpuset-size-as-upper-bound.patch +Patch3: rt-tests-oslat-Allocate-memory-for-cpu_set.patch +Patch4: oslat-allow-scheduling-on-all-possible-cores.patch %description rt-tests is a set of programs that test and measure various components of @@ -29,64 +32,127 @@ real-time kernel behavior. This package measures timer, signal, and hardware latency. It also tests the functioning of priority-inheritance mutexes. %prep -%setup -q +%setup -q -n %{name}-%{version} %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 %build -make NUMA=1 HAVE_PARSE_CPUSTRING_ALL=1 +%set_build_flags +%make_build %install -rm -rf $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT/%{python3_sitelib} -make DESTDIR=$RPM_BUILD_ROOT prefix=/usr install - -%clean -rm -rf $RPM_BUILD_ROOT +rm -rf ${build_root} +%make_install prefix=%{_prefix} %files %defattr(-,root,root,-) %{python3_sitelib}/hwlatdetect.py* %{python3_sitelib}/__pycache__/hwlatdetect* %caps(cap_sys_rawio+ep) /usr/bin/cyclictest -/usr/bin/pi_stress -/usr/bin/signaltest -/usr/bin/hwlatdetect -/usr/bin/rt-migrate-test -/usr/bin/pip_stress -/usr/bin/ptsematest -/usr/bin/sigwaittest -/usr/bin/svsematest -/usr/bin/pmqtest -/usr/bin/hackbench -/usr/bin/cyclicdeadline -/usr/bin/deadline_test -/usr/bin/queuelat -/usr/bin/ssdd -/usr/bin/determine_maximum_mpps.sh -/usr/bin/get_cpuinfo_mhz.sh -/usr/bin/get_cyclictest_snapshot +%{_bindir}/pi_stress +%{_bindir}/signaltest +%{_bindir}/hwlatdetect +%{_bindir}/rt-migrate-test +%{_bindir}/pip_stress +%{_bindir}/ptsematest +%{_bindir}/sigwaittest +%{_bindir}/svsematest +%{_bindir}/pmqtest +%{_bindir}/hackbench +%{_bindir}/cyclicdeadline +%{_bindir}/deadline_test +%{_bindir}/queuelat +%{_bindir}/ssdd +%{_bindir}/oslat +%{_bindir}/determine_maximum_mpps.sh +%{_bindir}/get_cyclictest_snapshot %{python3_sitelib}/get_cyclictest_snapshot.py* %{python3_sitelib}/__pycache__/get_cyclictest_snapshot* %doc -/usr/share/man/man8/cyclictest.8.gz -/usr/share/man/man8/hackbench.8.gz -/usr/share/man/man8/hwlatdetect.8.gz -/usr/share/man/man8/pi_stress.8.gz -/usr/share/man/man8/pmqtest.8.gz -/usr/share/man/man8/ptsematest.8.gz -/usr/share/man/man8/rt-migrate-test.8.gz -/usr/share/man/man8/signaltest.8.gz -/usr/share/man/man8/sigwaittest.8.gz -/usr/share/man/man8/svsematest.8.gz -/usr/share/man/man8/pip_stress.8.gz -/usr/share/man/man8/queuelat.8.gz -/usr/share/man/man8/deadline_test.8.gz -/usr/share/man/man8/cyclicdeadline.8.gz -/usr/share/man/man8/ssdd.8.gz +%{_mandir}/man8/cyclictest.8.* +%{_mandir}/man8/hackbench.8.* +%{_mandir}/man8/hwlatdetect.8.* +%{_mandir}/man8/pi_stress.8.* +%{_mandir}/man8/pmqtest.8.* +%{_mandir}/man8/ptsematest.8.* +%{_mandir}/man8/rt-migrate-test.8.* +%{_mandir}/man8/signaltest.8.* +%{_mandir}/man8/sigwaittest.8.* +%{_mandir}/man8/svsematest.8.* +%{_mandir}/man8/pip_stress.8.* +%{_mandir}/man8/queuelat.8.* +%{_mandir}/man8/deadline_test.8.* +%{_mandir}/man8/cyclicdeadline.8.* +%{_mandir}/man8/ssdd.8.* +%{_mandir}/man8/oslat.8.* +%{_mandir}/man8/get_cyclictest_snapshot.8.* +%{_mandir}/man8/determine_maximum_mpps.8.* %changelog +* Fri Feb 19 2021 John Kacur - 1.10-3 +- parse_cpumask() is too strict for oslat, allow all possible cores +Resolves: rhbz#1926578 + +* Thu Feb 18 2021 John Kacur - 1.10-2 +- print the version number in oslat everytime. +- use cpuset size as upper bound in loop in oslat +- allocate memory for cpu_set in oslat +Resolves: rhbz#1926578 + +* Mon Jan 11 2021 John Kacur - 1.10-1 +- Upgrade to upstream rt-tests-1.10 +Resolves: rhbz#1890556 + +* Wed Dec 09 2020 John Kacur - 1.9-2 +- Don't compress manpages by default in the makefile +- Add a menu to determine_maximum_mpps.sh +- Add determine_maximum_mmps.8 manpage +- Remove get_cpuinfo_mhz.sh and old Makefile in queuelat dir +Resolves: rhbz#1906104 + +* Tue Nov 24 2020 John Kacur - 1.9-1 +- Update to upstream rt-tests-1.9 +- Add BuildRequires for gcc +- use set_build_flags +- use macros _bindir, _mandir and _prefix where possible +- remove unnecessary clean section, simply build and install sections +Resolves: rhbz#1894615 + +* Thu Aug 20 2020 John Kacur - 1.8-11 +- Add SPDX license to oslat, and reformat source code to match suite +Resolves: rhbz#1870666 + +* Wed Aug 19 2020 John Kacur - 1.8-10 +- Remove undated Obsoletes from the specfile +Resolves: rhbz#1870212 + +* Wed Aug 19 2020 John Kacur - 1.8-9 +- Add the oslat program to the rt-tests suite +Resolves: rhbz#1869882 + +* Wed Jul 22 2020 John Kacur - 1.8-8 +- Change the conversion format to %ld for the num_processors in pi_stress +Resolves: rhbz#1859397 + +* Wed Jul 22 2020 John Kacur - 1.8-7 +- Limit the number of inversion groups in pi_stress +Resolves: rhbz#1859397 + +* Mon Jul 06 2020 John Kacur - 1.8-6 +- Install new man page get_cyclictest_snapshot +Resolves: rhbz#1826777 + +* Mon Jul 06 2020 John Kacur - 1.8-5 +- get_cyclictest_snapshot: print a warning message if there are no + running cyclictest instances +Resolves: rhbz#1826783 + +* Mon Jul 06 2020 John Kacur - 1.8-4 +- Add a get_cyclictest_snapshot man page and various small fixes +Resolves: rhbz#1826777 + * Tue May 12 2020 John Kacur - 1.8-3 - Fix integer overflow in queuelat Resolves: rhbz#1803862 @@ -662,7 +728,7 @@ Sebastian Andrzej Siewior (1): * Tue Mar 16 2010 Clark Williams - 0.67-1 - modified specfile to add hackbench - modified internal ftrace logic for correct tracing -- Changed rpm %description field to be more descriptive (BZ# 572323) +- Changed rpm %%description field to be more descriptive (BZ# 572323) - from Carsten Emde - added smp option to svsematest - fixed policy display in cyclictest