Subject: Re: bug#13911: make check errors for coreutils-8.21 on Solaris 10

From: Bernhard Voelker <[email-masked]>
Date: Sun, 10 Mar 2013 23:35:53 +0100

On 03/09/2013 03:15 PM, Marc Girod wrote:

Hi Marc,

thanks for reporting the test failures.

> FAIL: tests/tail-2/F-vs-missing.sh (exit: 1)

This one is a failure during the cleanup after the actual test ...

> + cleanup_
> + :
> + cd /proj/vobadm100/tmp/coreutils-8.21
> + chmod -R u+rwx /proj/vobadm100/tmp/coreutils-8.21/gt-F-vs-missing.sh.wlBi
> + rm -rf /proj/vobadm100/tmp/coreutils-8.21/gt-F-vs-missing.sh.wlBi
> rm: cannot remove '/proj/vobadm100/tmp/coreutils-8.21/gt-F-vs-missing.sh.wlBi': File exists
> + test 0 = 0
> + __st=1
> + exit 1

... and it reminds me to a similar issue we recently fixed
for another test:
  http://lists.gnu.org/archive/html/coreutils/2013-02/msg00039.html

I suspect you're on NFS, and for some reason, the cleanup fails.
The reason could be that the tail process didn't exit yet.

Does the following additional 'wait' help?

diff --git a/tests/tail-2/F-vs-missing.sh b/tests/tail-2/F-vs-missing.sh
index 0f74404..22982b6 100755
--- a/tests/tail-2/F-vs-missing.sh
+++ b/tests/tail-2/F-vs-missing.sh
@@ -45,6 +45,7 @@ tail_re='has appeared' retry_delay_ check_tail_output .1 7 ||
   { echo "$0: file: unexpected delay?"; cat out; fail=1; }

 kill -HUP $pid
+wait

 cleanup()
 {

> FAIL: tests/tail-2/F-vs-rename.sh (exit: 1)

same as above.

> FAIL: tests/cp/backup-dir.sh (exit: 1)
> FAIL: tests/cp/preserve-link.sh (exit: 1)
> FAIL: tests/cp/reflink-perm.sh (exit: 1)
> FAIL: tests/cp/src-base-dot.sh (exit: 1)

Somehow, preserving fails on that file system with
  "Operation not applicable".
What file system type is it?
You're not on MVFS, i.e. in a ClearCase dynamic view, are you?
(BTW, I've never seen so many ClearCase-VOBs being cross-mounted,
~2000, wow!)

> FAIL: tests/ls/stat-vs-dirent.sh (exit: 1)

This one is also strange, and it indicates again that
you're maybe using a strange file system type:

> ++ stat --format=%i /proj/2gsim
> + st_ino=17529
> + test -n 16609
> + test 16609 '!=' 17529
> + echo './tests/ls/stat-vs-dirent.sh: test failed: /proj/2gsim: d_ino(16609) != st_ino(17529)
>         This may indicate a flaw in your kernel or file system implementation.
>         The flaw isn'\''t serious for coreutils, but it might break other tools,
>         so you should report it to your operating system vendor.'

Have a nice day,
Berny