From: Damien Le Moal <damien.lemoal@opensource.wdc.com>
To: Luis Chamberlain <mcgrof@kernel.org>
Cc: "Christoph Hellwig" <hch@lst.de>,
"Javier González" <javier@javigon.com>,
"Matias Bjørling" <Matias.Bjorling@wdc.com>,
"Keith Busch" <kbusch@kernel.org>,
"Pankaj Raghav" <p.raghav@samsung.com>,
"Adam Manzanares" <a.manzanares@samsung.com>,
"jiangbo.365@bytedance.com" <jiangbo.365@bytedance.com>,
"kanchan Joshi" <joshi.k@samsung.com>,
"Jens Axboe" <axboe@kernel.dk>,
"Sagi Grimberg" <sagi@grimberg.me>,
"Pankaj Raghav" <pankydev8@gmail.com>,
"Kanchan Joshi" <joshiiitr@gmail.com>,
"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
"linux-nvme@lists.infradead.org" <linux-nvme@lists.infradead.org>
Subject: Re: [PATCH 0/6] power_of_2 emulation support for NVMe ZNS devices
Date: Wed, 16 Mar 2022 10:44:56 +0900 [thread overview]
Message-ID: <8e842ca0-1885-4738-0099-24409c108b2a@opensource.wdc.com> (raw)
In-Reply-To: <YjE8VZ1bbdE9nV0C@bombadil.infradead.org>
On 3/16/22 10:24, Luis Chamberlain wrote:
> On Wed, Mar 16, 2022 at 09:46:44AM +0900, Damien Le Moal wrote:
>> On 3/16/22 09:23, Luis Chamberlain wrote:
>>> What applications? ZNS does not incur a PO2 requirement. So I really
>>> want to know what applications make this assumption and would break
>>> because all of a sudden say NPO2 is supported.
>>
>> Exactly. What applications ? For ZNS, I cannot say as devices have not
>> been available for long. But neither can you.
>
> I can tell you we there is an existing NPO2 ZNS customer which chimed on
> the discussion and they described having to carry a delta to support
> NPO2 ZNS. So if you cannot tell me of a ZNS application which is going to
> break to add NPO2 support then your original point is not valid of
> suggesting that there would be a break.
>
>>> Why would that break those ZNS applications?
>>
>> Please keep in mind that there are power of 2 zone sized ZNS devices out
>> there.
>
> No one is saying otherwise.
>
>> Applications designed for these devices and optimized to do bit
>> shift arithmetic using the power of 2 size property will break.
>
> They must not be ZNS. So they can continue to chug on.
>
>> What the
>> plan for that case ? How will you address these users complaints ?
>
> They are not ZNS so they don't have to worry about ZNS.
>
> ZNS applications must be aware of that fact that NPO2 can exist.
> ZNS applications must be aware of that fact that any vendor may one day
> sell NPO2 devices.
>
>>>> Allowing non power of 2 zone size may prevent applications running today
>>>> to run properly on these non power of 2 zone size devices. *not* nice.
>>>
>>> Applications which want to support ZNS have to take into consideration
>>> that NPO2 is posisble and there existing users of that world today.
>>
>> Which is really an ugly approach.
>
> Ugly is relative and subjective. NAND does not force PO2.
>
>> The kernel
>
> <etc> And back you go to kernel talk. I thought you wanted to
> focus on applications.
>
>> Applications correctly designed for SMR can thus also run on ZNS too.
>
> That seems to be an incorrect assumption given ZNS drives exist
> with NPO2. So you can probably say that some SMR applications can work
> with PO2 ZNS drives. That is a more correct statement.
>
>> With this in mind, the spectrum of applications that would break on non
>> power of 2 ZNS devices is suddenly much larger.
>
> We already determined you cannot identify any ZNS specific application
> which would break.
>
> SMR != ZNS
Not for the block layer nor for any in-kernel users above it today. We
should not drive toward differentiating device types but unify them
under a common interface that works for everything, including
applications. That is why we have zone append emulation in the scsi disk
driver.
Considering the zone size requirement problem in the context of ZNS only
is thus far from ideal in my opinion, to say the least.
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2022-03-16 1:45 UTC|newest]
Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20220308165414eucas1p106df0bd6a901931215cfab81660a4564@eucas1p1.samsung.com>
2022-03-08 16:53 ` [PATCH 0/6] power_of_2 emulation support for NVMe ZNS devices Pankaj Raghav
2022-03-08 16:53 ` [PATCH 1/6] nvme: zns: Allow ZNS drives that have non-power_of_2 zone size Pankaj Raghav
2022-03-08 17:14 ` Keith Busch
2022-03-08 17:43 ` Pankaj Raghav
2022-03-09 3:40 ` Damien Le Moal
2022-03-09 13:19 ` Pankaj Raghav
2022-03-09 3:44 ` Damien Le Moal
2022-03-09 13:35 ` Pankaj Raghav
2022-03-08 16:53 ` [PATCH 2/6] block: Add npo2_zone_setup callback to block device fops Pankaj Raghav
2022-03-09 3:46 ` Damien Le Moal
2022-03-09 14:02 ` Pankaj Raghav
2022-03-08 16:53 ` [PATCH 3/6] block: add a bool member to request_queue for power_of_2 emulation Pankaj Raghav
2022-03-08 16:53 ` [PATCH 4/6] nvme: zns: Add support for power_of_2 emulation to NVMe ZNS devices Pankaj Raghav
2022-03-09 4:04 ` Damien Le Moal
2022-03-09 14:33 ` Pankaj Raghav
2022-03-09 21:43 ` Damien Le Moal
2022-03-10 20:35 ` Luis Chamberlain
2022-03-10 23:50 ` Damien Le Moal
2022-03-11 0:56 ` Luis Chamberlain
2022-03-08 16:53 ` [PATCH 5/6] null_blk: forward the sector value from null_handle_memory_backend Pankaj Raghav
2022-03-08 16:53 ` [PATCH 6/6] null_blk: Add support for power_of_2 emulation to the null blk device Pankaj Raghav
2022-03-09 4:09 ` Damien Le Moal
2022-03-09 14:42 ` Pankaj Raghav
2022-03-10 9:47 ` [PATCH 0/6] power_of_2 emulation support for NVMe ZNS devices Christoph Hellwig
2022-03-10 12:57 ` Pankaj Raghav
2022-03-10 13:07 ` Matias Bjørling
2022-03-10 13:14 ` Javier González
2022-03-10 14:58 ` Matias Bjørling
2022-03-10 15:07 ` Keith Busch
2022-03-10 15:16 ` Javier González
2022-03-10 23:44 ` Damien Le Moal
2022-03-10 15:13 ` Javier González
2022-03-10 14:44 ` Christoph Hellwig
2022-03-11 20:19 ` Luis Chamberlain
2022-03-11 20:51 ` Keith Busch
2022-03-11 21:04 ` Luis Chamberlain
2022-03-11 21:31 ` Keith Busch
2022-03-11 22:24 ` Luis Chamberlain
2022-03-12 7:58 ` Damien Le Moal
2022-03-14 7:35 ` Christoph Hellwig
2022-03-14 7:45 ` Damien Le Moal
2022-03-14 7:58 ` Christoph Hellwig
2022-03-14 10:49 ` Javier González
2022-03-14 14:16 ` Matias Bjørling
2022-03-14 16:23 ` Luis Chamberlain
2022-03-14 19:30 ` Matias Bjørling
2022-03-14 19:51 ` Luis Chamberlain
2022-03-15 10:45 ` Matias Bjørling
2022-03-14 19:55 ` Javier González
2022-03-15 12:32 ` Matias Bjørling
2022-03-15 13:05 ` Javier González
2022-03-15 13:14 ` Matias Bjørling
2022-03-15 13:26 ` Javier González
2022-03-15 13:30 ` Christoph Hellwig
2022-03-15 13:52 ` Javier González
2022-03-15 14:03 ` Matias Bjørling
2022-03-15 14:14 ` Johannes Thumshirn
2022-03-15 14:27 ` David Sterba
2022-03-15 19:56 ` Pankaj Raghav
2022-03-15 15:11 ` Javier González
2022-03-15 18:51 ` Pankaj Raghav
2022-03-16 8:37 ` Johannes Thumshirn
2022-03-15 17:00 ` Luis Chamberlain
2022-03-16 0:07 ` Damien Le Moal
2022-03-16 0:23 ` Luis Chamberlain
2022-03-16 0:46 ` Damien Le Moal
2022-03-16 1:24 ` Luis Chamberlain
2022-03-16 1:44 ` Damien Le Moal [this message]
2022-03-16 2:13 ` Luis Chamberlain
2022-03-16 2:27 ` Martin K. Petersen
2022-03-16 2:41 ` Luis Chamberlain
2022-03-16 8:44 ` Javier González
2022-03-15 13:39 ` Matias Bjørling
2022-03-16 0:00 ` Damien Le Moal
2022-03-16 8:57 ` Javier González
2022-03-16 16:18 ` Pankaj Raghav
2022-03-14 8:36 ` Matias Bjørling
2022-03-11 22:23 ` Adam Manzanares
2022-03-11 22:30 ` Keith Busch
2022-03-21 16:21 ` Jonathan Derrick
2022-03-21 16:44 ` Keith Busch
2022-03-10 17:38 ` Adam Manzanares
2022-03-14 7:36 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8e842ca0-1885-4738-0099-24409c108b2a@opensource.wdc.com \
--to=damien.lemoal@opensource.wdc.com \
--cc=Matias.Bjorling@wdc.com \
--cc=a.manzanares@samsung.com \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=javier@javigon.com \
--cc=jiangbo.365@bytedance.com \
--cc=joshi.k@samsung.com \
--cc=joshiiitr@gmail.com \
--cc=kbusch@kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=mcgrof@kernel.org \
--cc=p.raghav@samsung.com \
--cc=pankydev8@gmail.com \
--cc=sagi@grimberg.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox