summaryrefslogtreecommitdiff
path: root/tests/tail-2/inotify-race
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2009-12-06 00:42:42 +0000
committerPádraig Brady <P@draigBrady.com>2009-12-06 00:42:42 +0000
commitafd087d4140a40a1ff9db84be5bcb5c7c49084c8 (patch)
tree99803c9f5a7a9de48604e9fb20d674d0c75f7d4e /tests/tail-2/inotify-race
parent9b4b38f56e854f8f1343fed9dbc225ffbb1d77d4 (diff)
downloadcoreutils-afd087d4140a40a1ff9db84be5bcb5c7c49084c8.tar.xz
tests: don't run tail-2/inotify-race by default
* tests/tail-2/inotify-race: Note the caveats of the test. I.E. the intermittent skips and the gdb hang reported by Alan Curry. Add extra info to the log on why the test is skipped as it may be due to multiple reasons. Mark the test as very expensive so that it's not normally run.
Diffstat (limited to 'tests/tail-2/inotify-race')
-rwxr-xr-xtests/tail-2/inotify-race16
1 files changed, 12 insertions, 4 deletions
diff --git a/tests/tail-2/inotify-race b/tests/tail-2/inotify-race
index b1e1a7cc2..0ee2df5c3 100755
--- a/tests/tail-2/inotify-race
+++ b/tests/tail-2/inotify-race
@@ -27,6 +27,10 @@ fi
. $srcdir/test-lib.sh
+# Don't run this test by default because sometimes it's skipped as noted below.
+# Also gdb has a bug in Debian's gdb-6.8-3 at least that causes it to not
+# cleanup and exit correctly when it receives a SIGTERM, thus hanging the test.
+very_expensive_
touch file || framework_failure
touch tail.out || framework_failure
@@ -37,14 +41,18 @@ case $(cat gdb.out) in
*) skip_test_ "can't run gdb";;
esac
-# See if gdb works:
-timeout 10s gdb -nx --batch-silent \
+# See if gdb works and
+# tail_forever_inotify is compiled and not inlined
+timeout 10s gdb -nx --batch-silent \
--eval-command='break tail_forever_inotify' \
--eval-command='run -f file' \
--eval-command='quit' \
tail < /dev/null > gdb.out 2>&1
-test -s gdb.out && skip_test_ "can't set breakpoints in tail"
+# FIXME: The above is seen to _intermittently_ fail with:
+# warning: .dynamic section for "/lib/libc.so.6" is not at the expected address
+# warning: difference appears to be caused by prelink, adjusting expectations
+test -s gdb.out && { cat gdb.out; skip_test_ "can't set breakpoints in tail"; }
# Run "tail -f file", stopping to append a line just before
# inotify initialization, and then continue. Before the fix,
@@ -55,7 +63,7 @@ timeout 10s gdb -nx --batch-silent \
--eval-command="shell echo never-seen-with-tail-7.5 >> file" \
--eval-command='continue' \
--eval-command='quit' \
- tail < /dev/null &
+ tail < /dev/null > /dev/null 2>&1 &
pid=$!
tail --pid=$pid -f tail.out | (read; kill $pid)