#! /bin/bash
-# FS QA Test No. 276
-#
-# Check that getfsmap agrees with getbmap when realtime files are present.
-#
-#-----------------------------------------------------------------------
+# SPDX-License-Identifier: GPL-2.0
# Copyright (c) 2016, Oracle and/or its affiliates. All Rights Reserved.
#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation.
+# FS QA Test No. 276
#
-# This program is distributed in the hope that it would be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# Check that getfsmap agrees with getbmap when realtime files are present.
#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write the Free Software Foundation,
-# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#-----------------------------------------------------------------------
-
seq=`basename "$0"`
seqres="$RESULT_DIR/$seq"
echo "QA output created by $seq"
. ./common/filter
# real QA test starts here
-_supported_os Linux
_supported_fs xfs
_require_realtime
_require_xfs_scratch_rmapbt
rm -f "$seqres.full"
echo "Format and mount"
-_scratch_mkfs > "$seqres.full" 2>&1
+_scratch_mkfs | _filter_mkfs 2> "$tmp.mkfs"
+. $tmp.mkfs
+cat "$tmp.mkfs" > $seqres.full
_scratch_mount
+# Don't let the rt extent size perturb the fsmap output with unwritten
+# extents in places we don't expect them
+test $rtextsz -eq $dbsize || _notrun "Skipping test due to rtextsize > 1 fsb"
+
$XFS_IO_PROG -f -R -c 'pwrite -S 0x80 0 737373' $SCRATCH_MNT/urk >> $seqres.full
sync
-./src/punch-alternating $SCRATCH_MNT/urk >> $seqres.full
+$here/src/punch-alternating $SCRATCH_MNT/urk >> $seqres.full
ino=$(stat -c '%i' $SCRATCH_MNT/urk)
echo "Get fsmap" | tee -a $seqres.full