From: Jim Meyering Date: Tue, 28 Nov 2006 12:36:37 +0000 (+0100) Subject: * tests/mv/no-target-dir: Detect a buggy rename syscall. If found, X-Git-Tag: COREUTILS-6_7~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1ddf7faf11c9f24d2822bf9e588895743bd5e3fa;p=thirdparty%2Fcoreutils.git * tests/mv/no-target-dir: Detect a buggy rename syscall. If found, skip this test. This happens at least on ia64 linux-2.4.19 w/ext3. Reported by Matthew Woehlke. --- diff --git a/ChangeLog b/ChangeLog index 67fd95e173..714f8b91c1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2006-11-28 Jim Meyering + * tests/mv/no-target-dir: Detect a buggy rename syscall. If found, + skip this test. This happens at least on ia64 linux-2.4.19 w/ext3. + Reported by Matthew Woehlke. + * tests/mv/dir2dir: Also accept EBUSY. Reported by Matthew Woehlke. diff --git a/tests/mv/no-target-dir b/tests/mv/no-target-dir index cf4891c58d..db7fe94564 100755 --- a/tests/mv/no-target-dir +++ b/tests/mv/no-target-dir @@ -35,11 +35,19 @@ cd $tmp || framework_failure=1 mkdir -p d/sub empty src d2/sub e2 || framework_failure=1 touch f || framework_failure=1 +# Skip this test if there's an underlying kernel bug. +mkdir a b b/a || framework_failure=1 + if test $framework_failure = 1; then echo "$0: failure in testing framework" 1>&2 (exit 1); exit 1 fi +mv a b || { + echo "$0: skipping this test: your kernel's rename syscall is buggy" 1>&2 + (exit 77); exit 77 +} + fail=0 # This should succeed, since both src and dest are directories,