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 ..... > 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@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html