xfstests: make 016 work with delaylog
authorDave Chinner <dchinner@redhat.com>
Mon, 14 Feb 2011 00:21:44 +0000 (11:21 +1100)
committerDave Chinner <david@fromorbit.com>
Mon, 14 Feb 2011 00:21:44 +0000 (11:21 +1100)
Test 016 fails with delaylog because it measures log traffic to disk
and delaylog writes almost nothing to the log for the given test. TO
make it work, add sync calls to the work loop to cause the log to be
flushed reliably for both delaylog and nodelaylog and hence contain
the same number of log records.

As a result, the log space consumed by the test is not changed by
the delaylog option and the test passes. The test is not
significantly slowed down by the addition of the sync calls (takes
15s to run on a single SATA drive).

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Alex Elder <aelder@sgi.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
016

diff --git a/016 b/016
index 980eb0b48f9b25aacdf8f735b734e3fa17ea79e7..9275ade5d7c437d65956bd5a9c61cdb6d3fdfc4b 100755 (executable)
--- a/016
+++ b/016
@@ -100,9 +100,11 @@ _log_traffic()
     echo "   *** fiddle"
     while [ $count -ge 0 ]
     do
-        touch $out
-        rm $out
-        let "count = count - 1"
+       touch $out
+       sync
+       rm $out
+       sync
+       let "count = count - 1"
     done
 
     echo "   *** unmount"