xfstests: automatically add -F to xfs_io on non-xfs

The -F flag to xfs_io originally enabled it to operate on non-xfs
filesystems.  This restriction was removed upstream in favor of
gracefully failing on the handful of operations that actually
required xfs, and the option was deprecated.

However, xfstests is still used on distros with older xfsprogs, and
so "xfs_io -F" was necessary throughout xfstests.

Simplify this by appending -F to XFS_IO_PROG when it's needed -
i.e. if we're using old xfsprogs on a non-xfs filesystem.

This will eliminate errors when new tests leave out the -F, and
if and when -F is finally removed, there will be one central
location in xfstests to update.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Acked-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Rich Johnston <rjohnston@sgi.com>
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
This commit is contained in:
Eric Sandeen
2013-05-14 08:33:44 -05:00
committed by Rich Johnston
parent 2941898570
commit 96fce07867
30 changed files with 142 additions and 138 deletions
+8 -8
View File
@@ -73,9 +73,9 @@ _scratch_mount -o ro || _fail "Could not mount scratch readonly"
echo "== try to create new file"
touch $SCRATCH_MNT/this_should_fail 2>&1 | _filter_scratch
echo "== pwrite to null device"
$XFS_IO_PROG -F -c "pwrite 0 512" $DEVNULL | _filter_xfs_io
$XFS_IO_PROG -c "pwrite 0 512" $DEVNULL | _filter_xfs_io
echo "== pread from zero device"
$XFS_IO_PROG -F -c "pread 0 512" $DEVZERO | _filter_xfs_io
$XFS_IO_PROG -c "pread 0 512" $DEVZERO | _filter_xfs_io
echo "== truncating write to null device"
echo foo > $DEVNULL 2>&1 | _filter_scratch
@@ -84,16 +84,16 @@ echo foo >> $DEVNULL 2>&1 | _filter_scratch
echo "== writing to symlink from ro fs to rw fs"
# Various combinations of O_CREAT & O_TRUNC
$XFS_IO_PROG -F -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
$XFS_IO_PROG -F -f -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
$XFS_IO_PROG -F -t -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
$XFS_IO_PROG -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
$XFS_IO_PROG -f -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
$XFS_IO_PROG -t -c "pwrite 0 512" $SYMLINK | _filter_xfs_io
echo "== write to bind-mounted rw file on ro fs"
mount --bind $TARGET $BINDFILE
# with and without -f (adds O_CREAT)
$XFS_IO_PROG -F -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
$XFS_IO_PROG -F -f -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
$XFS_IO_PROG -F -t -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
$XFS_IO_PROG -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
$XFS_IO_PROG -f -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
$XFS_IO_PROG -t -c "pwrite 0 512" $BINDFILE | _filter_xfs_io
# success, all done
status=0