work_file="$SCRATCH_MNT/tmpfile"
touch $work_file
- chattr =c $work_file
+ $CHATTR_PROG =c $work_file
$XFS_IO_PROG -f -c "pwrite 0 1M" -c "fsync" $work_file | _filter_xfs_io
}
mkdir $SCRATCH_MNT/testdir
echo "Setting compression flag in the directory..."
-chattr +c $SCRATCH_MNT/testdir
+$CHATTR_PROG +c $SCRATCH_MNT/testdir
echo "Directory compression property value:"
$BTRFS_UTIL_PROG property get $SCRATCH_MNT/testdir compression | \
_filter_btrfs_compress_property
_filter_btrfs_compress_property
echo "Clearing compression flag from directory..."
-chattr -c $SCRATCH_MNT/testdir
+$CHATTR_PROG -c $SCRATCH_MNT/testdir
echo "Directory compression property value:"
$BTRFS_UTIL_PROG property get $SCRATCH_MNT/testdir compression | \
_filter_btrfs_compress_property
_scratch_mount >> $ROUND2_LOG 2>&1
echo "++ chattr -R -i" >> $ROUND2_LOG
-chattr -R -f -i "${SCRATCH_MNT}/" > /dev/null 2>> $ROUND2_LOG
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/" > /dev/null 2>> $ROUND2_LOG
echo "++ test scratch" >> $ROUND2_LOG
_scratch_fuzz_test >> $ROUND2_LOG 2>&1
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
# metadata sync writes inside ext4_handle_dirty_metadata()
_scratch_mount -onoload
touch $SCRATCH_MNT/file
-chattr +S $SCRATCH_MNT/file
+$CHATTR_PROG +S $SCRATCH_MNT/file
# Create sparse file
for ((i = 0; i < 21; i++))
do
ctime1=`stat -c %z $SCRATCH_MNT/tmp`
sleep 1
-chattr +A $SCRATCH_MNT/tmp
-chattr -A $SCRATCH_MNT/tmp
+$CHATTR_PROG +A $SCRATCH_MNT/tmp
+$CHATTR_PROG -A $SCRATCH_MNT/tmp
ctime2=`stat -c %z $SCRATCH_MNT/tmp`
_scratch_cycle_mount
dd if=/dev/zero of=$SCRATCH_MNT/file.$idx \
bs=1M count=4 $write_opt \
>> $seqres.full 2>&1 || exit
- chattr $chattr_opt $SCRATCH_MNT/file.$idx >> $seqres.full \
+ $CHATTR_PROG $chattr_opt $SCRATCH_MNT/file.$idx >> $seqres.full \
|| exit
done
done
chattr_opt: $chattr_opt" >>$seqres.full
dd if=/dev/zero of=$SCRATCH_MNT/file.$idx \
bs=1M $write_opt >> $seqres.full 2>&1
- chattr $chattr_opt $SCRATCH_MNT/file.$idx \
+ $CHATTR_PROG $chattr_opt $SCRATCH_MNT/file.$idx \
>> $seqres.full || exit
done
sync
_scratch_mount >> $ROUND2_LOG 2>&1
echo "++ chattr -R -i" >> $ROUND2_LOG
-chattr -R -f -i "${SCRATCH_MNT}/" > /dev/null 2>> $ROUND2_LOG
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/" > /dev/null 2>> $ROUND2_LOG
echo "+++ test scratch" >> $ROUND2_LOG
_scratch_fuzz_test >> $ROUND2_LOG 2>&1
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files"
ls -la "${TESTDIR}" >> $seqres.full
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files"
ls -la "${TESTDIR}" >> $seqres.full
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ check files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify dir (2)"
mkdir -p "${SCRATCH_MNT}/blockdir"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
broken=0
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify files (2)"
touch "${SCRATCH_MNT}/bigfile"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify xattr (2)"
getfattr "${SCRATCH_MNT}/attrfile" -n "user.x00000000" > /dev/null 2>&1 && (setfattr -x "user.x00000000" "${SCRATCH_MNT}/attrfile" || _fail "remove corrupt xattr")
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify xattr (2)"
setfattr -n "user.x00000000" -v "1111111111111111" "${SCRATCH_MNT}/attrfile" || _fail "modified corrupt xattr"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ modify xattr (2)"
getfattr "${SCRATCH_MNT}/attrfile" -n "user.x00000000" 2> /dev/null && (setfattr -x "user.x00000000" "${SCRATCH_MNT}/attrfile" || _fail "modified corrupt xattr")
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i "${SCRATCH_MNT}/"
+$CHATTR_PROG -R -f -i "${SCRATCH_MNT}/"
echo "+ reflink more (2)"
_cp_reflink "${SCRATCH_MNT}/file1" "${SCRATCH_MNT}/file5" || \
_do_dump
echo "Dump exclude flag set, but no sync yet (should be skipped)"
-chattr +d $TEST_DIR/d/t
+$CHATTR_PROG +d $TEST_DIR/d/t
_do_dump
echo "Dump exclude flag set, after sync (should be skipped)"
_scratch_mount
echo "+ chattr -R -i"
-chattr -R -f -i ${SCRATCH_MNT}/
+$CHATTR_PROG -R -f -i ${SCRATCH_MNT}/
echo "+ copy more (2)"
cp -p ${SCRATCH_MNT}/file1 ${SCRATCH_MNT}/file5 || \