Subject: core-updates-frozen: strace 5.13 fails "make check" on AArch64
From: Simon South <[email-masked]>
To: [email-masked]
Date: Thu, 02 Sep 2021 15:24:55 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

strace 5.13 in core-updates-frozen appears to build fine but fails its
"readlinkat" test for me on AArch64 (real hardware; a ROCK64).  This is
the only test that fails.

From the build directory, strace-5.13/tests/readlinkat.dir/exp contains

  readlinkat(AT_FDCWD, "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x6c\x69\x6e\x6b", 0xfffff7e2cfea, 22) = -1 ENOENT (No such file or directory)
  readlinkat(AT_FDCWD, "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x6c\x69\x6e\x6b", "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x74\x61\x72\x67\x65\x74", 22) = 22
  +++ exited with 0 +++

but strace-5.13/tests/readlinkat.dir/out shows

  readlinkat(AT_FDCWD, "\x2f\x70\x72\x6f\x63\x2f\x73\x65\x6c\x66\x2f\x65\x78\x65", "\x2f\x74\x6d\x70\x2f\x67\x75\x69\x78\x2d\x62\x75\x69\x6c\x64\x2d\x73\x74\x72\x61\x63\x65\x2d\x35\x2e\x31\x33\x2e\x64\x72\x76\x2d"..., 4096) = 62
  readlinkat(AT_FDCWD, "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x6c\x69\x6e\x6b", 0xfffff7e2cfea, 22) = -1 ENOENT (No such file or directory)
  readlinkat(AT_FDCWD, "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x6c\x69\x6e\x6b", "\x74\x65\x73\x74\x2e\x72\x65\x61\x64\x6c\x69\x6e\x6b\x61\x74\x2e\x74\x61\x72\x67\x65\x74", 22) = 22
  +++ exited with 0 +++

The only difference is an additional line at the start of the generated
output.  I see this in the strace package definition
(gnu/packages/linux.scm:2256):

  ;; XXX: This test fails because an extra readlink call is made
  ;; by the glibc when using the ld.so cache.
  (("readlink.gen.test[^:]") " ")

Perhaps the same is true for readlinkat on AArch64?

-- 
Simon South
[email-masked]