generic/495: split the test

Split each swap-file test into its own test. So on file-systems that
do not support e.g. sparse files (exfat) other swap-file tests can be
executed.

Signed-off-by: Pavel Reichl <preichl@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Tested-by: Shreeya Patel <shreeya.patel@collabora.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Pavel Reichl
2021-04-23 12:07:31 +02:00
committed by Eryu Guan
parent a8c09c9e02
commit bd5aba84ff
5 changed files with 54 additions and 15 deletions
+2 -12
View File
@@ -4,7 +4,7 @@
# #
# FS QA Test 495 # FS QA Test 495
# #
# Test invalid swap files. # Test invalid swap file (with holes)
# #
seq=`basename $0` seq=`basename $0`
seqres=$RESULT_DIR/$seq seqres=$RESULT_DIR/$seq
@@ -32,11 +32,11 @@ _supported_fs generic
_require_scratch_swapfile _require_scratch_swapfile
_require_test_program mkswap _require_test_program mkswap
_require_test_program swapon _require_test_program swapon
_require_sparse_files
_scratch_mkfs >> $seqres.full 2>&1 _scratch_mkfs >> $seqres.full 2>&1
_scratch_mount _scratch_mount
echo "File with holes"
# We can't use _format_swapfile because we're using our custom mkswap and # We can't use _format_swapfile because we're using our custom mkswap and
# swapon. # swapon.
touch "$SCRATCH_MNT/swap" touch "$SCRATCH_MNT/swap"
@@ -47,15 +47,5 @@ $XFS_IO_PROG -c "truncate $(($(get_page_size) * 10))" "$SCRATCH_MNT/swap"
"$here/src/swapon" "$SCRATCH_MNT/swap" "$here/src/swapon" "$SCRATCH_MNT/swap"
swapoff "$SCRATCH_MNT/swap" >/dev/null 2>&1 swapoff "$SCRATCH_MNT/swap" >/dev/null 2>&1
echo "Empty swap file (only swap header)"
rm -f "$SCRATCH_MNT/swap"
touch "$SCRATCH_MNT/swap"
$CHATTR_PROG +C "$SCRATCH_MNT/swap" >> $seqres.full 2>&1
chmod 0600 "$SCRATCH_MNT/swap"
_pwrite_byte 0x61 0 $(get_page_size) "$SCRATCH_MNT/swap" >> $seqres.full
"$here/src/mkswap" "$SCRATCH_MNT/swap"
"$here/src/swapon" "$SCRATCH_MNT/swap"
swapoff "$SCRATCH_MNT/swap" >/dev/null 2>&1
status=0 status=0
exit exit
-3
View File
@@ -1,5 +1,2 @@
QA output created by 495 QA output created by 495
File with holes
swapon: Invalid argument
Empty swap file (only swap header)
swapon: Invalid argument swapon: Invalid argument
+49
View File
@@ -0,0 +1,49 @@
#! /bin/bash
# SPDX-License-Identifier: GPL-2.0
# Copyright (c) 2018 Facebook. All Rights Reserved.
#
# FS QA Test 636
#
# Test invalid swap files.
# Empty swap file (only swap header)
#
seq=`basename $0`
seqres=$RESULT_DIR/$seq
echo "QA output created by $seq"
here=`pwd`
tmp=/tmp/$$
status=1 # failure is the default!
trap "_cleanup; exit \$status" 0 1 2 3 15
_cleanup()
{
cd /
rm -f $tmp.*
}
# get standard environment, filters and checks
. ./common/rc
. ./common/filter
# remove previous $seqres.full before test
rm -f $seqres.full
_supported_fs generic
_require_scratch_swapfile
_require_test_program mkswap
_require_test_program swapon
_scratch_mkfs >> $seqres.full 2>&1
_scratch_mount
touch "$SCRATCH_MNT/swap"
$CHATTR_PROG +C "$SCRATCH_MNT/swap" >> $seqres.full 2>&1
chmod 0600 "$SCRATCH_MNT/swap"
_pwrite_byte 0x61 0 $(get_page_size) "$SCRATCH_MNT/swap" >> $seqres.full
"$here/src/mkswap" "$SCRATCH_MNT/swap"
"$here/src/swapon" "$SCRATCH_MNT/swap"
swapoff "$SCRATCH_MNT/swap" >/dev/null 2>&1
status=0
exit
+2
View File
@@ -0,0 +1,2 @@
QA output created by 636
swapon: Invalid argument
+1
View File
@@ -638,3 +638,4 @@
633 auto quick atime attr cap idmapped io_uring mount perms rw unlink 633 auto quick atime attr cap idmapped io_uring mount perms rw unlink
634 auto quick atime bigtime 634 auto quick atime bigtime
635 auto quick atime bigtime shutdown 635 auto quick atime bigtime shutdown
636 auto quick swap