From: Luis Chamberlain <mcgrof@kernel.org>
To: Damien Le Moal <damien.lemoal@opensource.wdc.com>
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: Tue, 15 Mar 2022 18:24:37 -0700 [thread overview]
Message-ID: <YjE8VZ1bbdE9nV0C@bombadil.infradead.org> (raw)
In-Reply-To: <c3d71cd7-cf95-c290-bfc6-29d307b7b4e8@opensource.wdc.com>
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
If you really want to use SMR applications for ZNS that seems to be
a bit beyond the scope of this discussion, but it seems to me that those
SMR applications should simply learn that if a device is ZNS that NPO2 can
be expected.
As technologies evolve so do specifications.
> This has always been my concern from the start: allowing non power of 2
> zone size fragments userspace support and has the potential to
> complicate things for application developers.
It's a reality though. Devices exist, and so do users. And they're
carrying their own delta to support NPO2 ZNS today on Linux.
> > You cannot negate their existance.
> >
> >> I have yet to see any convincing argument proving that this is not an issue.
> >
> > You are just saying things can break but not clarifying exactly what.
> > And you have not taken a position to say WD will not ever support NPO2
> > on ZNS. And so, you can't negate the prospect of that implied path for
> > support as a possibility, even if it means work towards the ecosystem
> > today.
>
> Please do not bring in corporate strategy aspects in this discussion.
> This is a technical discussion and I am not talking as a representative
> of my employer nor should we ever dicsuss business plans on a public
> mailing list. I am a kernel developer and maintainer. Keep it technical
> please.
This conversation is about the reality that ZNS NPO2 exist and how best to
support that. You seem to want to negate that reality and support on
Linux without even considering what the changes look like to to support
ZNS NPO2.
As a maintainer I think we need to *evaluate* supporting users as best
as possible. Not denying their existance. Even if it pains us.
Luis
next prev parent reply other threads:[~2022-03-16 1:24 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 [this message]
2022-03-16 1:44 ` Damien Le Moal
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=YjE8VZ1bbdE9nV0C@bombadil.infradead.org \
--to=mcgrof@kernel.org \
--cc=Matias.Bjorling@wdc.com \
--cc=a.manzanares@samsung.com \
--cc=axboe@kernel.dk \
--cc=damien.lemoal@opensource.wdc.com \
--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=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