Re: Test 272 fails for ext3
From: Dave Chinner <david@fromorbit.com>
Date: 2012-08-16 22:49:02
Also in:
linux-ext4
On Thu, Aug 16, 2012 at 11:37:57AM +0200, Jan Kara wrote:
Hello, I was looking into why test 272 from xfstests fails for ext3 and the reason is that ext3 does not support direct IO to file with enabled data journalling (open returns EINVAL because ->direct_IO callback is not specified). So I was thinking how to accomodate this fact in the test - the best I found was to just check using xfs_io whether O_DIRECT open succeeds and perform the test only in that case. Attached patch does this or do people have other ideas?
# ext3 doesn't support direct IO in journalling mode ext3_write_opt_list="iflag=noatime conv=notrunc conv=fsync" ext4_write_opt_list="iflag=noatime conv=notrunc conv=fsync oflag=direct" if [ $FSTYP = "ext3" ]; then write_opt_list="$ext3_write_opt_list" else write_opt_list="$ext4_write_opt_list" fi .....
quoted hunk ↗ jump to hunk
diff --git a/272 b/272 index 26dfa3b..e39c52b 100755 --- a/272 +++ b/272@@ -52,6 +52,12 @@ _workout() echo "OP write_opt: $write_opt 4M, \ chattr_opt: $chattr_opt" + if [ "$write_opt" = "oflag=direct" ]; then + # Some filesystems don't support direct IO + # in some cases, check for that + xfs_io -F -d -f -c "" $SCRATCH_MNT/file.$idx \ + >> $seq.full 2>&1 || continue + fi
That only fixes one of the two places that does direct IO on a jounralled file. The above will fix both... Cheers, Dave. -- Dave Chinner david@fromorbit.com _______________________________________________ xfs mailing list xfs@oss.sgi.com http://oss.sgi.com/mailman/listinfo/xfs