On 2022-04-28 01:37, Damien Le Moal wrote: >> diff --git a/block/blk-core.c b/block/blk-core.c >> index 937bb6b86331..850caf311064 100644 >> --- a/block/blk-core.c >> +++ b/block/blk-core.c >> @@ -634,8 +634,7 @@ static inline blk_status_t blk_check_zone_append(struct request_queue *q, >> return BLK_STS_NOTSUPP; >> >> /* The bio sector must point to the start of a sequential zone */ >> - if (pos & (blk_queue_zone_sectors(q) - 1) || >> - !blk_queue_zone_is_seq(q, pos)) >> + if (!blk_queue_zone_aligned(q, pos) || !blk_queue_zone_is_seq(q, pos)) > > blk_queue_zone_aligned() is a little confusing since "aligned" is also > used for write-pointer aligned. I would rename this helper > > blk_queue_is_zone_start() > > or something like that. > That is a good idea and definitely a better name that blk_queue_zone_aligned. I will fix it. >> /* >> @@ -489,14 +489,14 @@ static int blk_revalidate_zone_cb(struct blk_zone *zone, unsigned int idx, >> * smaller last zone. >> */ >> if (zone->start == 0) { >> - if (zone->len == 0 || !is_power_of_2(zone->len)) { >> - pr_warn("%s: Invalid zoned device with non power of two zone size (%llu)\n", >> - disk->disk_name, zone->len); >> + if (zone->len == 0) { >> + pr_warn("%s: Invalid zoned device size", >> + disk->disk_name); > > The message is weird now. Please change it to "Invalid zone size". > Ok. > Also, the entire premise of this patch series is that it is hard for > people to support the unusable sectors between zone capacity and zone end > for drives with a zone capacity smaller than the zone size. > > Yet, here you do not check that zone capacity == zone size for drives that > do not have a zone size equal to a power of 2 number of sectors. This > means that we can still have drives with ZC < ZS AND ZS not equal to a > power of 2. So from the point of view of your arguments, no gains at all. > Any thoughts on this ? > That is a good point. Instead of implicitly assuming npo2 drives to have ZC == ZS, it is better to be explicit during bringup. Thanks. As Luis mentioned, I will add this condition in the next revision.