Re: [PATCH v2 5/6] generic/413, xfs/260: Improve format operation for PMD fault testing

Xiao Yang
2020-06-23T06:01:32Z

Hi Darrick,

Sorry to bother you.
Do you have any comment on this patch? :-)

Thanks,
Xiao Yang
On 2020/6/17 17:32, Xiao Yang wrote:
> From: Xiao Yang <yangx.jy@cn.fujitsu.com>
>
> 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>
> ---
> common/rc | 7 +++++++
> tests/generic/413 | 10 ++--------
> tests/xfs/260 | 4 ++--
> 3 files changed, 11 insertions(+), 10 deletions(-)
>
> diff --git a/common/rc b/common/rc
> index bde26010..4852b21b 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -170,6 +170,13 @@ _get_filesize()
> stat -c %s "$1"
> }
>
> +# get hugepagesize in bytes
> +_get_hugepagesize()
> +{
> + local hugepgsz=$(awk '/Hugepagesize/ {print $2}' /proc/meminfo)
> + echo $((hugepgsz * 1024))
> +}
> +
> _mount()
> {
> $MOUNT_PROG `_mount_ops_filter $*`
> diff --git a/tests/generic/413 b/tests/generic/413
> index 19e1b926..dfe2912b 100755
> --- a/tests/generic/413
> +++ b/tests/generic/413
> @@ -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=""
> diff --git a/tests/xfs/260 b/tests/xfs/260
> index fbdc4cd8..7afc20f1 100755
> --- a/tests/xfs/260
> +++ b/tests/xfs/260
> @@ -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"