xfs: rework min log size helper
authorDarrick J. Wong <darrick.wong@oracle.com>
Tue, 9 Jul 2019 17:49:41 +0000 (10:49 -0700)
committerEryu Guan <guaneryu@gmail.com>
Sat, 13 Jul 2019 04:21:03 +0000 (12:21 +0800)
commit241c25a975f40006547fa791531ee595f541f9d6
treecce4ecbf47f28ee0988ba4e5939968fb1c89f97a
parent55cc523b0ec48521ea949776dc9f7265764b39a2
xfs: rework min log size helper

The recent _scratch_find_xfs_min_logblocks helper has a major thinko in
it -- it relies on feeding a too-small size to _scratch_do_mkfs so that
mkfs will tell us the minimum log size.  Unfortunately, _scratch_do_mkfs
will see that first failure and retry the mkfs without MKFS_OPTIONS,
which means that we return the minimum log size for the default mkfs
settings without MKFS_OPTIONS.

This is a problem if someone's running fstests with a set of
MKFS_OPTIONS that affects the minimum log size.  To fix this, open-code
the _scratch_do_mkfs retry behavior so that we only do the "retry
without MKFS_OPTIONS" behavior if the mkfs failed for a reason other
than the minimum log size check.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
common/xfs