generic/413, xfs/260: Improve format operation for PMD fault testing

1) Simple code and fix the wrong value of stripe_width by _scratch_mkfs_geom().
2) Get hugepage size by _get_hugepagesize() and replace fixed 2M with
   hugepage size because hugepage size/PMD_SIZE is not 2M on some
   arches(e.g. hugepage size/PMD_SIZE is 512M on arm64).
3) For debugging, redirect the output of mkfs to $seqres.full.

Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Xiao Yang
2020-08-06 10:13:38 +08:00
committed by Eryu Guan
parent 2aaaef91f3
commit ab0680e581
3 changed files with 14 additions and 10 deletions
+10
View File
@@ -170,6 +170,16 @@ _get_filesize()
stat -c %s "$1"
}
# Get hugepagesize in bytes
_get_hugepagesize()
{
local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo)
# Call _notrun if $hugepgsz is not a number
echo "$hugepgsz" | egrep -q ^[0-9]+$ || \
_notrun "Cannot get the value of Hugepagesize"
echo $((hugepgsz * 1024))
}
_mount()
{
$MOUNT_PROG `_mount_ops_filter $*`
+2 -8
View File
@@ -111,14 +111,8 @@ do_tests()
t_mmap_dio_dax $((64 * 1024 * 1024))
}
# make fs 2Mb aligned for PMD fault testing
mkfs_opts=""
if [ "$FSTYP" == "ext4" ]; then
mkfs_opts="-E stride=512,stripe_width=1"
elif [ "$FSTYP" == "xfs" ]; then
mkfs_opts="-d su=2m,sw=1"
fi
_scratch_mkfs "$mkfs_opts" > /dev/null 2>&1
# make fs aligned for PMD fault testing
_scratch_mkfs_geom $(_get_hugepagesize) 1 >> $seqres.full 2>&1
# mount SCRATCH_DEV with dax option, TEST_DEV not
export MOUNT_OPTIONS=""
+2 -2
View File
@@ -121,8 +121,8 @@ do_tests()
t_dax_flag_mmap_dio $((64 * 1024 * 1024))
}
# make xfs 2Mb aligned for PMD fault testing
_scratch_mkfs "-d su=2m,sw=1" > /dev/null 2>&1
# make xfs aligned for PMD fault testing
_scratch_mkfs_geom $(_get_hugepagesize) 1 >> $seqres.full 2>&1
# mount with dax option
_scratch_mount "-o dax"