From: Bernhard Voelker Date: Thu, 9 Jan 2014 01:14:17 +0000 (+0100) Subject: tests: avoid FP failure when cp fails for /proc/cpuinfo X-Git-Tag: v8.23~153 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d1342119790fc9c12729db50ee5db9248be82408;p=thirdparty%2Fcoreutils.git tests: avoid FP failure when cp fails for /proc/cpuinfo On emulated aarch64 systems like in the qemu-based OpenBuildService of openSUSE, cp fails to copy /proc/cpuinfo because the inode number changes between the initial stat() call and copying the file: $ cp /proc/cpuinfo exp cp: skipping file '/proc/cpuinfo', as it was \ replaced while being copied * tests/cp/proc-zero-len.sh: When cp fails, check on the above error message to skip the test. --- diff --git a/tests/cp/proc-zero-len.sh b/tests/cp/proc-zero-len.sh index d6f05e2568..3369cfb3cd 100755 --- a/tests/cp/proc-zero-len.sh +++ b/tests/cp/proc-zero-len.sh @@ -27,7 +27,12 @@ test -r $f || f=empty cat $f > out || fail=1 # With coreutils-6.9, this would create a zero-length "exp" file. -cp $f exp || fail=1 +# Skip this test on architectures like aarch64 where the inode +# number of the file changed during the cp run. +cp $f exp 2>err \ + || { fail=1; + grep 'replaced while being copied' \ + && skip_ "File $f is being replaced while being copied"; } # Don't simply compare contents; they might differ, # e.g., if CPU freq changes between cat and cp invocations.