Re: [PATCH 12/16] zonefs: allow non power of 2 zoned devices

From: Pankaj Raghav
Date: Thu Apr 28 2022 - 11:54:40 EST

On 2022-04-28 01:39, Damien Le Moal wrote:
> On 4/28/22 01:02, Pankaj Raghav wrote:
>> The zone size shift variable is useful only if the zone sizes are known
>> to be power of 2. Remove that variable and use generic helpers from
>> block layer to calculate zone index in zonefs
> Period missing at the end of the sentence.
> What about zonefs-tools and its test suite ? Is everything still OK on
> that front ? I suspect not...
I don't know why you assume that :). Zonefs had only one place that had
the assumption of po2 zsze sectors:
if (nr_zones < dev.nr_zones) {
size_t runt_sectors = dev.capacity & (dev.zone_nr_sectors - 1);

In my local tree I changed it and I was able to run zonefs tests for non
po2 zone device. I have also mentioned it in my cover letter:
ZoneFS: from zonefs-tools were run with no failures.
I will make sure to add my private tree for zonefs in my cover letter in
the next rev. But even without that change, a typical emulated npo2
device should work fine because the changes are applicable only for
"runt" zones.