On 2020/06/18 11:48, Shin'ichiro Kawasaki wrote: > When dm zoned has multiple devices, metadata is on the cache device, not > in random zones of the zoned devices. Then the number of metadata zones > shall be checked with the number of cache zones, not random zones. > > Fixes: 34f5affd04c4 ("dm zoned: separate random and cache zones") > Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx> > --- > drivers/md/dm-zoned-metadata.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/md/dm-zoned-metadata.c b/drivers/md/dm-zoned-metadata.c > index 130b5a6d9f12..fc1329ca3e70 100644 > --- a/drivers/md/dm-zoned-metadata.c > +++ b/drivers/md/dm-zoned-metadata.c > @@ -1078,7 +1078,8 @@ static int dmz_check_sb(struct dmz_metadata *zmd, struct dmz_sb *dsb, > nr_meta_zones = (le32_to_cpu(sb->nr_meta_blocks) + zmd->zone_nr_blocks - 1) > >> zmd->zone_nr_blocks_shift; > if (!nr_meta_zones || > - nr_meta_zones >= zmd->nr_rnd_zones) { > + (zmd->nr_devs <= 1 && nr_meta_zones >= zmd->nr_rnd_zones) || > + (zmd->nr_devs > 1 && nr_meta_zones >= zmd->nr_cache_zones)) { > dmz_dev_err(dev, "Invalid number of metadata blocks"); > return -ENXIO; > } > Looks good to me. Reviewed-by: Damien Le Moal <damien.lemoal@xxxxxxx> -- Damien Le Moal Western Digital Research -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel