GNU bug report logs -
#50346
core-updates-frozen: strace 5.13 fails "make check" on AArch64
Previous Next
Reported by: Simon South <simon <at> simonsouth.net>
Date: Thu, 2 Sep 2021 19:26:01 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Modify the invocation of strace's "readlink" and "readlinkat" tests to prevent
them from failing due to an additional system call made by Guix's patched
version of glibc.
* gnu/packages/linux.scm (strace)[source]: Add patch.
[arguments]<#:phases>: Do not disable the "readlink" test now that it can
succeed.
* gnu/packages/patches/strace-fix-readlink-readlinkat-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 1 +
gnu/packages/linux.scm | 8 ++--
...strace-fix-readlink-readlinkat-tests.patch | 46 +++++++++++++++++++
3 files changed, 50 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/strace-fix-readlink-readlinkat-tests.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index bb22e29caa..f9c8956568 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1547,6 +1547,7 @@ dist_patch_DATA = \
%D%/packages/patches/sdl-pango-sans-serif.patch \
%D%/packages/patches/smalltalk-multiplication-overflow.patch \
%D%/packages/patches/sqlite-hurd.patch \
+ %D%/packages/patches/strace-fix-readlink-readlinkat-tests.patch \
%D%/packages/patches/sunxi-tools-remove-sys-io.patch \
%D%/packages/patches/patchutils-test-perms.patch \
%D%/packages/patches/patch-hurd-path-max.patch \
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 63f0e4108c..99b7ce7066 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -2240,7 +2240,9 @@ Zerofree requires the file system to be unmounted or mounted read-only.")
"/strace-" version ".tar.xz"))
(sha256
(base32
- "0mmns22bjjvakxj29si0x4dcylcgy26llpcimkb0llcxif439k2s"))))
+ "0mmns22bjjvakxj29si0x4dcylcgy26llpcimkb0llcxif439k2s"))
+ (patches
+ (search-patches "strace-fix-readlink-readlinkat-tests.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -2253,10 +2255,6 @@ Zerofree requires the file system to be unmounted or mounted read-only.")
(add-after 'unpack 'disable-failing-tests
(lambda _
(substitute* "tests/Makefile.in"
- ;; XXX: This test fails because an extra readlink call is made
- ;; by the glibc when using the ld.so cache.
- (("readlink.gen.test[^:]") " ")
-
;; XXX: These hang forever even if the test time-out is
;; extended.
(("^\tstrace-DD?D?\\.test \\\\.*") "")
diff --git a/gnu/packages/patches/strace-fix-readlink-readlinkat-tests.patch b/gnu/packages/patches/strace-fix-readlink-readlinkat-tests.patch
new file mode 100644
index 0000000000..dd5ee98703
--- /dev/null
+++ b/gnu/packages/patches/strace-fix-readlink-readlinkat-tests.patch
@@ -0,0 +1,46 @@
+Prevent strace's "readlink" and "readlinkat" tests from failing due to the
+additional system call made by glibc with the patch "glibc-dl-cache.patch"
+applied (introduced in commit 52564e9).
+
+These changes cause strace to report during these tests only system calls on
+files contained in the test directory, effectively filtering out the
+additional readlink/readlinkat call on "/proc/self/exe" and allowing the tests
+to complete as normal.
+
+diff --git a/tests/gen_tests.in b/tests/gen_tests.in
+index 8b4e2e9..cc3ca63 100644
+--- a/tests/gen_tests.in
++++ b/tests/gen_tests.in
+@@ -623,8 +623,8 @@ quotactl-xfs-v -v -e trace=quotactl
+ read-write -a15 -eread=0,5 -ewrite=1,4 -e trace=read,write -P read-write-tmpfile -P /dev/zero -P /dev/null
+ readahead -a1
+ readdir -a16
+-readlink -xx
+-readlinkat -xx
++readlink -xx --trace-path=test.readlink.link
++readlinkat -xx --trace-path=test.readlinkat.link
+ reboot -s 256
+ recv-MSG_TRUNC -a26 -e trace=recv
+ recvfrom -a35
+diff --git a/tests/readlink.gen.test b/tests/readlink.gen.test
+index 4263234..418691b 100755
+--- a/tests/readlink.gen.test
++++ b/tests/readlink.gen.test
+@@ -1,4 +1,4 @@
+ #!/bin/sh -efu
+-# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (readlink -xx ); do not edit.
++# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (readlink -xx --trace-path=test.readlink.link); do not edit.
+ . "${srcdir=.}/init.sh"
+-run_strace_match_diff -xx
++run_strace_match_diff -xx --trace-path=test.readlink.link
+diff --git a/tests/readlinkat.gen.test b/tests/readlinkat.gen.test
+index d7de993..a48d590 100755
+--- a/tests/readlinkat.gen.test
++++ b/tests/readlinkat.gen.test
+@@ -1,4 +1,4 @@
+ #!/bin/sh -efu
+-# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (readlinkat -xx ); do not edit.
++# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (readlinkat -xx --trace-path=test.readlinkat.link); do not edit.
+ . "${srcdir=.}/init.sh"
+-run_strace_match_diff -xx
++run_strace_match_diff -xx --trace-path=test.readlinkat.link
--
2.25.2
This bug report was last modified 3 years and 244 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.