[dm-devel] [PATCH 01/11] dm-zoned: store zone id within the zone structure
Hannes Reinecke
hare at suse.de
Tue Apr 7 07:52:55 UTC 2020
On 4/7/20 3:47 AM, Damien Le Moal wrote:
> On 2020/04/07 2:26, Hannes Reinecke wrote:
>> Instead of calculating the zone index by the offset within the
>> zone array store the index within the structure itself.
>>
>> Signed-off-by: Hannes Reinecke <hare at suse.de>
>> ---
>> drivers/md/dm-zoned-metadata.c | 3 ++-
>> drivers/md/dm-zoned.h | 3 +++
>> 2 files changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/md/dm-zoned-metadata.c b/drivers/md/dm-zoned-metadata.c
>> index c8787560fa9f..afce594067fb 100644
>> --- a/drivers/md/dm-zoned-metadata.c
>> +++ b/drivers/md/dm-zoned-metadata.c
>> @@ -189,7 +189,7 @@ struct dmz_metadata {
>> */
>> unsigned int dmz_id(struct dmz_metadata *zmd, struct dm_zone *zone)
>> {
>> - return ((unsigned int)(zone - zmd->zones));
>> + return zone->id;
>
> The zmd argument is now unused, and the helper does not make much sense anymore.
> Why not just drop it entirely ? Callers directly referencing the ->id field of a
> zone is simple and clear.
>
>> }
>>
>> sector_t dmz_start_sect(struct dmz_metadata *zmd, struct dm_zone *zone)
>> @@ -1119,6 +1119,7 @@ static int dmz_init_zone(struct blk_zone *blkz, unsigned int idx, void *data)
>>
>> INIT_LIST_HEAD(&zone->link);
>> atomic_set(&zone->refcount, 0);
>> + zone->id = idx;
>> zone->chunk = DMZ_MAP_UNMAPPED;
>>
>> switch (blkz->type) {
>> diff --git a/drivers/md/dm-zoned.h b/drivers/md/dm-zoned.h
>> index 884c0e586082..39d59898abbe 100644
>> --- a/drivers/md/dm-zoned.h
>> +++ b/drivers/md/dm-zoned.h
>> @@ -87,6 +87,9 @@ struct dm_zone {
>> /* Zone activation reference count */
>> atomic_t refcount;
>>
>> + /* Zone id */
>> + unsigned int id;
>> +
>> /* Zone write pointer block (relative to the zone start block) */
>> unsigned int wp_block;
>>
>>
>
>
Indeed, you are right. Will be doing so for the next round.
Cheers,
Hannes
--
Dr. Hannes Reinecke Teamlead Storage & Networking
hare at suse.de +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer
More information about the dm-devel
mailing list