[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0d0e5c63-a155-d2ad-1829-c016c61acad6@opensource.wdc.com>
Date: Thu, 2 Mar 2023 17:19:20 +0900
From: Damien Le Moal <damien.lemoal@...nsource.wdc.com>
To: Andreas Hindborg <nmi@...aspace.dk>, Ming Lei <ming.lei@...hat.com>
Cc: linux-block@...r.kernel.org, Hans Holmberg <Hans.Holmberg@....com>,
Matias Bjorling <Matias.Bjorling@....com>,
Niklas Cassel <Niklas.Cassel@....com>,
kernel test robot <lkp@...el.com>,
Jens Axboe <axboe@...nel.dk>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] block: ublk: enable zoned storage support
On 3/2/23 16:31, Andreas Hindborg wrote:
>>> +struct ublk_param_zoned {
>>> + __u64 max_open_zones;
>>> + __u64 max_active_zones;
>>> + __u64 max_append_size;
>>> +};
>>
>> Is the above zoned parameter enough for future extension?
>> Does ZNS need extra parameter? Or some zoned new(important) features?
>
> @Damien, @Hans, @Matias, what do you think?
Yes, add some reserved fields. The struct is 24 B for now, you can make it 32 B.
But it is a little odd: why 64 bits for max open/active zones and max append ?
bio len is 32 bits and number of zones also 32 bits. You do not need 64 bits for
all these fields. Also, no zone model reported with this ? What about write
granularity (for SMR HDDs) too ?
So something like:
struct ublk_param_zoned {
__u32 model;
__u32 write_granularity;
__u32 max_open_zones;
__u32 max_active_zones;
__u32 max_append_size;
__u8 reserved[12];
};
looks better to me. Note sure about the need for model and write_granularity
here though. I did not follow zoned ublk patches.
--
Damien Le Moal
Western Digital Research
Powered by blists - more mailing lists