On 18/03/2023 22:55, Sam James wrote:

Pádraig Brady <p...@draigbrady.com> writes:

On 16/03/2023 20:44, Sam James wrote:
   # grep -rsin "FAIL:"
     /var/tmp/portage/sys-apps/coreutils-9.1_p20230313/temp/build.log
     8833:# XFAIL: 0
     8834:# FAIL:  3
     12578:FAIL: tests/misc/cksum-raw
     17775:FAIL: tests/df/df-symlink
     18973:FAIL: tests/dd/nocache_eof
     37099:# XFAIL: 0
     37100:# FAIL:  3
     38194:# XFAIL: 0
     38195:# FAIL:  0
Again not worried about cksum-raw as Bruno's reported that. Note
that we had the df/df-symlink failure on s390x too (also reported
in a separate email).
For nocache_eof:
```
+ strace_dd if=in.f of=out.f bs=1M iflag=nocache oflag=nocache,sync
+ strace -o dd.strace -e fadvise64,fadvise64_64 dd status=none if=in.f
of=out.f bs=1M iflag=nocache oflag=nocache,sync
+ advised_to_eof
+ grep -F ' 0, POSIX_FADV_DONTNEED' dd.strace
+ fail=1

I suspect the fadvise64,fadvise64_64 strace filter isn't working on s390.
An unfiltered strace output from one of those dd commands would be useful.

```
+ strace -V
+ strace -qe fadvise64,fadvise64_64 echo
+ strace -o log-help ls --help
++ wc -l
+ n_lines_help=34
+ rm -f log-help
+ test 34 = 0
+ test 34 = 1
+ head -c1234567 /dev/zero
+ dd if=in.f iflag=nocache count=0
0+0 records in
0+0 records out
0 bytes copied, 0.000272126 s, 0.0 kB/s
+ strace_dd if=in.f of=out.f bs=1M oflag=nocache,sync
+ strace -o dd.strace dd status=none if=in.f of=out.f bs=1M
oflag=nocache,sync
+ advised_to_eof
+ grep -F ' 0, POSIX_FADV_DONTNEED' dd.strace
+ fail=1
+ strace_dd if=in.f count=0 iflag=nocache
+ strace -o dd.strace dd status=none if=in.f count=0 iflag=nocache
+ advised_to_eof
+ grep -F ' 0, POSIX_FADV_DONTNEED' dd.strace
+ fail=1
+ strace_dd if=in.f of=/dev/null iflag=nocache skip=10 count=300
+ strace -o dd.strace dd status=none if=in.f of=/dev/null iflag=nocache
skip=10 count=300
+ returns_ 1 advised_to_eof
+ strace_dd if=in.f of=/dev/null iflag=nocache bs=1M count=3000
+ strace -o dd.strace dd status=none if=in.f of=/dev/null iflag=nocache
bs=1M count=3000
+ advised_to_eof
+ grep -F ' 0, POSIX_FADV_DONTNEED' dd.strace
+ fail=1
+ strace_dd if=in.f of=/dev/null bs=1M count=1 iflag=nocache
+ strace -o dd.strace dd status=none if=in.f of=/dev/null bs=1M count=1
iflag=nocache
+ returns_ 1 advised_to_eof
+ strace_dd if=in.f of=out.f bs=1M iflag=nocache oflag=nocache,sync
+ strace -o dd.strace dd status=none if=in.f of=out.f bs=1M
iflag=nocache oflag=nocache,sync
+ advised_to_eof
+ grep -F ' 0, POSIX_FADV_DONTNEED' dd.strace
+ fail=1
+ strace -o dd.strace dd status=none if=in.f of=out.f bs=1M oflag=direct
oseek=512B
dd: error writing 'out.f': Invalid argument
+ warn_ '512 byte aligned O_DIRECT is not supported on this (file)
system'
+ case $IFS in
+ printf '%s\n' '512 byte aligned O_DIRECT is not supported on this
(file) system'
512 byte aligned O_DIRECT is not supported on this (file) system
+ test 9 = 2
+ printf '%s\n' '512 byte aligned O_DIRECT is not supported on this
(file) system'
+ sed 1q
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ remove_tmp_
+ __st=1
+ cleanup_
+ :
+ test '' = yes
+ cd
/var/tmp/portage/sys-apps/coreutils-9.1_p20230313/work/coreutils-9.1.198-e68b1
+ chmod -R u+rwx
/var/tmp/portage/sys-apps/coreutils-9.1_p20230313/work/coreutils-9.1.198-e68b1/gt-nocache_eof.sh.qY23
+ rm -rf
/var/tmp/portage/sys-apps/coreutils-9.1_p20230313/work/coreutils-9.1.198-e68b1/gt-nocache_eof.sh.qY23
+ exit 1
FAIL tests/dd/nocache_eof.sh (exit status: 1)
```

Full log: http://sprunge.us/KtDl84

Let me know if that looks like what you were expecting. All I did was
edit tests/dd/nocache_eof.sh's strace_dd to remove -e and its argument
and from a later call too.

You'll also need to cat the dd.strace file, like in the attached.

cheers,
Pádraig
diff --git a/tests/dd/nocache_eof.sh b/tests/dd/nocache_eof.sh
index ca36032f1..a3a7174ef 100755
--- a/tests/dd/nocache_eof.sh
+++ b/tests/dd/nocache_eof.sh
@@ -31,7 +31,7 @@ dd if=in.f iflag=nocache count=0 ||
   skip_ 'this file system lacks support for posix_fadvise()'
 
 strace_dd() {
-  strace -o dd.strace -e fadvise64,fadvise64_64 dd status=none "$@" || fail=1
+  strace -o dd.strace dd status=none "$@" || fail=1
 }
 
 advised_to_eof() {
@@ -45,7 +45,7 @@ strace_dd if=in.f of=out.f bs=1M oflag=nocache,sync
 #fadvise64(1, 0, 1048576, POSIX_FADV_DONTNEED) = 0
 #fadvise64(1, 1048576, 131072, POSIX_FADV_DONTNEED) = 0
 #fadvise64(1, 1179648, 0, POSIX_FADV_DONTNEED) = 0
-advised_to_eof || fail=1
+advised_to_eof || { cat dd.strace; fail=1; }
 
 strace_dd if=in.f count=0 iflag=nocache
 #fadvise64(0, 0, 0, POSIX_FADV_DONTNEED) = 0

Reply via email to