On Wed, Mar 12, 2025 at 07:44:59AM +0100, Christoph Hellwig wrote: > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > common/rc | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/common/rc b/common/rc > index 00a315db0fe7..5e56d90e5931 100644 > --- a/common/rc > +++ b/common/rc > @@ -1268,6 +1268,7 @@ _try_scratch_mkfs_sized() > case $FSTYP in > xfs) > local rt_ops > + local zone_type=`_zone_type $SCRATCH_DEV` > > if [ -b "$SCRATCH_RTDEV" ]; then > local rtdevsize=`blockdev --getsize64 $SCRATCH_RTDEV` > @@ -1275,6 +1276,12 @@ _try_scratch_mkfs_sized() > _notrun "Scratch rt device too small" > fi > rt_ops="-r size=$fssize" > + elif [ "${zone_type}" != "none" ] || > + [[ $MKFS_OPTIONS =~ "zoned=1" ]]; then > + # Maybe also add back the size check, but it'll require > + # somewhat complicated arithmetics for the size of the > + # conventional zones > + rt_ops="-r size=$fssize" Hmm, what happens if you pass -dsize=X and -rzoned=1,size=X? Oh, you get a data section of size X followed by an internal zoned section also of size X. Might want to mention that in the commit message... Reviewed-by: "Darrick J. Wong" <djwong@xxxxxxxxxx> --D > fi > > # don't override MKFS_OPTIONS that set a block size. > -- > 2.45.2 > >