Update the LTP version in valgrind testsuite to v20250930.
All patches from auxprogs/ltp-patches were accepted by LTP
upstream and included in the release, so these can now be
dropped locally.
https://bugs.kde.org/show_bug.cgi?id=510169
509567 unhandled amd64-linux syscall: 443 (quotactl_fd)
509642 Add missing ppc64-linux syswraps
509643 Add missing s390x-linux syswraps
+510169 Update the LTP version in valgrind testsuite to 20250930
To see details of a given bug, visit
https://bugs.kde.org/show_bug.cgi?id=XXXXXX
filters/prctl10 \
filters/select03
-LTP_PATCHES = \
- ltp-patches/0001-Make-sure-32-bit-powerpc-syscall-defs-don-t-leak-to-.patch \
- ltp-patches/0002-Introduce-LTP_QUIET-env-var.patch \
- ltp-patches/0003-mmap04-Make-sure-the-scanf-address-format-is-at-leas.patch
+LTP_PATCHES =
EXTRA_DIST = \
docs/valgrind-listener-manpage.xml \
endif
# Linux Test Project
-LTP_VERSION=20250530
-LTP_SHA256_SUM=27586ba78eac1e40cd422add2842f1ad70f09fea55da3bd6a25e10feb786d4f2
+LTP_VERSION=20250930
+LTP_SHA256_SUM=048fa4d69ddbe8a94aa15da9bdc85713ab07a0abbc3de2b8bdd9757644aef1e4
LTP_TAR_NAME=ltp-full-$(LTP_VERSION).tar.xz
LTP_URL=https://github.com/linux-test-project/ltp/releases/download/$(LTP_VERSION)/$(LTP_TAR_NAME)
LTP_TAR=$(AUX_CHECK_DIR)/$(LTP_TAR_NAME)
+++ /dev/null
-From a90b2aac69028bd6b9e0fcc1e36760639b937b99 Mon Sep 17 00:00:00 2001
-From: Martin Cermak <mcermak@redhat.com>
-Date: Mon, 4 Aug 2025 21:46:52 +0200
-Subject: [PATCH] Make sure 32-bit powerpc syscall defs don't leak to 64-bit
- powerpc systems
-
-generate_syscalls.sh generates the syscalls.h header at the configure
-time. At the moment, that header has a set of 32-bit syscalls defined
-with the __powerpc__ gate, plus another set of 64-bit syscalls defined
-with the __powerpc64__ gate. For 32-bit powerpc systems that's fine.
-But for a 64-bit powerpc system this means that both sets of syscalls
-become defined, which isn't right.
-
-Thing is that on a 64-bit powerpc system, both __powerpc__ and
-__powerpc64__ are defined compiler macros, while on a 32-bit powerpc
-system, only the former is defined while the latter is not.
-
-That said, the correct gate for a 32-bit only powerpc code is:
- #if defined(__powerpc__) && !defined(__powerpc64__)
-
-Without this patch, e.g. __NR_clock_gettime64 def leaks to
-64-bit powerpc systems, which is wrong. This patch fixes it.
----
- include/lapi/syscalls/generate_syscalls.sh | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/include/lapi/syscalls/generate_syscalls.sh b/include/lapi/syscalls/generate_syscalls.sh
-index b17c72ddf..19f280dfb 100755
---- a/include/lapi/syscalls/generate_syscalls.sh
-+++ b/include/lapi/syscalls/generate_syscalls.sh
-@@ -78,6 +78,7 @@ while IFS= read -r arch; do
- parisc) echo "#ifdef __hppa__" ;;
- loongarch64) echo "#ifdef __loongarch__" ;;
- arm64) echo "#ifdef __aarch64__" ;;
-+ powerpc) echo "#if defined(__powerpc__) && !defined(__powerpc64__)" ;;
- *) echo "#ifdef __${arch}__" ;;
- esac
-
---
-2.48.1
-
+++ /dev/null
-From 183df3240f8e7ca38fbe2fd472c31c9417ae7eb2 Mon Sep 17 00:00:00 2001
-From: Martin Cermak <mcermak@redhat.com>
-Date: Tue, 16 Sep 2025 15:46:40 +0200
-Subject: [PATCH] Introduce LTP_QUIET env var
-
-Introduce LTP_QUIET env variable. When set to 1 or y, it will
-suppress printing TCONF, TWARN, TINFO, and TDEBUG messages.
----
- lib/tst_test.c | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/lib/tst_test.c b/lib/tst_test.c
-index 92872cc89..609a7b075 100644
---- a/lib/tst_test.c
-+++ b/lib/tst_test.c
-@@ -68,6 +68,7 @@ static int iterations = 1;
- static float duration = -1;
- static float timeout_mul = -1;
- static int reproducible_output;
-+static int quiet_output;
-
- struct context {
- int32_t lib_pid;
-@@ -307,15 +308,19 @@ static void print_result(const char *file, const int lineno, int ttype,
- res = "TBROK";
- break;
- case TCONF:
-+ if (quiet_output) return;
- res = "TCONF";
- break;
- case TWARN:
-+ if (quiet_output) return;
- res = "TWARN";
- break;
- case TINFO:
-+ if (quiet_output) return;
- res = "TINFO";
- break;
- case TDEBUG:
-+ if (quiet_output) return;
- res = "TDEBUG";
- break;
- default:
-@@ -670,6 +675,7 @@ static void print_help(void)
- fprintf(stderr, "LTP_DEV_FS_TYPE Filesystem used for testing (default: %s)\n", DEFAULT_FS_TYPE);
- fprintf(stderr, "LTP_ENABLE_DEBUG Print debug messages (set 1 or y)\n");
- fprintf(stderr, "LTP_REPRODUCIBLE_OUTPUT Values 1 or y discard the actual content of the messages printed by the test\n");
-+ fprintf(stderr, "LTP_QUIET Values 1 or y will suppress printing TCONF, TWARN, TINFO, and TDEBUG messages\n");
- fprintf(stderr, "LTP_SINGLE_FS_TYPE Specifies filesystem instead all supported (for .all_filesystems)\n");
- fprintf(stderr, "LTP_FORCE_SINGLE_FS_TYPE Testing only. The same as LTP_SINGLE_FS_TYPE but ignores test skiplist.\n");
- fprintf(stderr, "LTP_TIMEOUT_MUL Timeout multiplier (must be a number >=1)\n");
-@@ -1361,6 +1367,7 @@ static void do_setup(int argc, char *argv[])
- {
- char *tdebug_env = getenv("LTP_ENABLE_DEBUG");
- char *reproducible_env = getenv("LTP_REPRODUCIBLE_OUTPUT");
-+ char *quiet_env = getenv("LTP_QUIET");
-
- if (!tst_test)
- tst_brk(TBROK, "No tests to run");
-@@ -1391,6 +1398,10 @@ static void do_setup(int argc, char *argv[])
- (!strcmp(reproducible_env, "1") || !strcmp(reproducible_env, "y")))
- reproducible_output = 1;
-
-+ if (quiet_env &&
-+ (!strcmp(quiet_env, "1") || !strcmp(quiet_env, "y")))
-+ quiet_output = 1;
-+
- assert_test_fn();
-
- TCID = tcid = get_tcid(argv);
---
-2.48.1
-
+++ /dev/null
-From 6c3a6a6f625b58e8dc611cc12bc6015dc8dd5b32 Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Thu, 18 Sep 2025 17:16:05 +0200
-Subject: [PATCH] mmap04: Make sure the scanf address format is at least 8 hex
- chars
-
-The addresses in /proc/self/maps are at least 8 hex chars. Zeros are
-added to the front of the address when shorter (both on 32bit and
-64bit systems).
-
-Under valgrind the mmaps used in kernel/syscalls/mmap/mmap04.c come
-out very low in the address space and might be shorter than 8 hex
-chars. This causes the scanf to fail:
-mmap04.c:62: TBROK: Expected 1 conversions got 0 FILE '/proc/self/maps'
-
-Fix this by using "%08" PRIxPTR when creating the fmt used.
-
-Signed-off-by: Mark Wielaard <mark@klomp.org>
----
- testcases/kernel/syscalls/mmap/mmap04.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/testcases/kernel/syscalls/mmap/mmap04.c b/testcases/kernel/syscalls/mmap/mmap04.c
-index 4a050b7b50da..5b28180df29b 100644
---- a/testcases/kernel/syscalls/mmap/mmap04.c
-+++ b/testcases/kernel/syscalls/mmap/mmap04.c
-@@ -58,7 +58,8 @@ static void run(unsigned int i)
-
- addr2 = SAFE_MMAP(addr1 + pagesize, pagesize, tc->prot, tc->flags | MAP_FIXED, -1, 0);
-
-- sprintf(fmt, "%" PRIxPTR "-%%*x %%s", (uintptr_t)addr2);
-+ /* A /proc/self/maps address is at least 8 hex (left zero padded) */
-+ sprintf(fmt, "%08" PRIxPTR "-%%*x %%s", (uintptr_t)addr2);
- SAFE_FILE_LINES_SCANF("/proc/self/maps", fmt, perms);
-
- if (!strcmp(perms, tc->exp_perms)) {
---
-2.51.0
-