From: Pankaj Raghav <p.raghav@samsung.com>
To: Damien Le Moal <damien.lemoal@opensource.wdc.com>,
<axboe@kernel.dk>, <snitzer@redhat.com>,
<Johannes.Thumshirn@wdc.com>, <hch@lst.de>, <hare@suse.de>
Cc: <dsterba@suse.com>, <dm-devel@redhat.com>,
<jiangbo.365@bytedance.com>, <linux-block@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <linux-nvme@lists.infradead.org>,
<jaegeuk@kernel.org>, <gost.dev@samsung.com>
Subject: Re: [PATCH v6 8/8] dm: ensure only power of 2 zone sizes are allowed
Date: Thu, 26 May 2022 10:12:03 +0200 [thread overview]
Message-ID: <0bb57f61-9a33-0273-4b89-2cdf042e56dd@samsung.com> (raw)
In-Reply-To: <9703ca4c-33cf-cb3a-b46b-6b0e5537cfd6@opensource.wdc.com>
Hi Damien,
On 5/26/22 01:13, Damien Le Moal wrote:
> On 5/26/22 00:49, Pankaj Raghav wrote:
>> Ensure that only power of 2 zoned devices are enabled for dm targets that
>> supports zoned devices. This constraint can be relaxed once non power of
>> 2 zone size support is added to the DM layer.
>>
>> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
>> ---
>> drivers/md/dm-table.c | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
>> index 03541cfc2317..2a8af70d1d4a 100644
>> --- a/drivers/md/dm-table.c
>> +++ b/drivers/md/dm-table.c
>> @@ -251,6 +251,12 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev,
>> if (bdev_is_zoned(bdev)) {
>> unsigned int zone_sectors = bdev_zone_sectors(bdev);
>>
>> + if (!is_power_of_2(zone_sectors)) {
>> + DMWARN("%s: %pg only power of two zone size supported",
>> + dm_device_name(ti->table->md), bdev);
>> + return 1;
>> + }
>> +
>> if (start & (zone_sectors - 1)) {
>> DMWARN("%s: start=%llu not aligned to h/w zone size %u of %pg",
>> dm_device_name(ti->table->md),
>
> I thought the agreed upon idea is be to add a dm-linear like target to
> emulate power of 2 zone size so that we can keep btrfs and f2fs running on
> this new class of device. So why this patch ?
>
> The entire series as is will fragment zoned block device support, which is
> not a good thing at all. Without the new dm target, none of the current
> kernel supported zone stuff will work.
>
I have mentioned this in my cover letter:
The support is planned to be added in two phases:
- Add npo2 support to block, nvme layer and necessary stop gap patches
in the filesystems
- Add dm target for npo2 devices so that they are presented as a po2
device to filesystems
This series is targeting the first phase where we have stop gap patches
and add support to the block and nvme layer and in the next phase we
will add a dm linear like target for npo2 zone sizes which can be used
by all the filesystems. This patch makes sure that we can't use npo2
zoned devices without the proper support that will be added in the next
phase in the DM.
Even though we decided we would like to take the direction of DM, I am
still awaiting reply from Christoph who raised concerns about npo2 zoned
device support and Mike Snitzer about this approach. That is one of the
reason I split this effort into two phases.
> The zonefs patch is also gone from the series. Why ? As is, zonefs will
> break if it is passed a non power of 2 zone size drive.
>
I think this was my mistake. If you agree with the above approach, then
I can add a stop gap patch also to zonefs npo2 zoned devices. This way
all the zone filesystem support goes via DM for npo2 zoned devices. I am
proposing this so that initially we always have only one way of
accessing a npo2 zoned device (via DM) from **filesystems** until we add
native support.
next prev parent reply other threads:[~2022-05-26 8:12 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20220525154958eucas1p2f6af3db8ab178be28eb6c42e9e1be591@eucas1p2.samsung.com>
2022-05-25 15:49 ` [PATCH v6 0/8] support non power of 2 zoned devices Pankaj Raghav
[not found] ` <CGME20220525155000eucas1p200ac7e1c844980e728c9e88f51c4590e@eucas1p2.samsung.com>
2022-05-25 15:49 ` [PATCH v6 1/8] block: make blkdev_nr_zones and blk_queue_zone_no generic for npo2 zsze Pankaj Raghav
[not found] ` <CGME20220525155001eucas1p13e64a05367144fc6965f486bb07b55a2@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 2/8] block: allow blk-zoned devices to have non-power-of-2 zone size Pankaj Raghav
[not found] ` <CGME20220525155002eucas1p140ca05edf5219f38e8f1a45801c2ed62@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 3/8] nvme: zns: Allow ZNS drives that have non-power_of_2 " Pankaj Raghav
[not found] ` <CGME20220525155004eucas1p162c6f43536424f93800ba788ed045363@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 4/8] nvmet: Allow ZNS target to support non-power_of_2 zone sizes Pankaj Raghav
[not found] ` <CGME20220525155005eucas1p13b6204e84c2dbb1eeefc2645f69b45b0@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 5/8] null_blk: allow non power of 2 zoned devices Pankaj Raghav
[not found] ` <CGME20220525155006eucas1p13888214b1d9e23a26d04a75fbc5bf72b@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 6/8] null_blk: use zone_size_sects_shift for " Pankaj Raghav
[not found] ` <CGME20220525155007eucas1p1b7fc82f9e42be028e8f00109d55e6a62@eucas1p1.samsung.com>
2022-05-25 15:49 ` [PATCH v6 7/8] dm-zoned: ensure only power of 2 zone sizes are allowed Pankaj Raghav
[not found] ` <CGME20220525155008eucas1p2c843cc9098f2920e961f80ffaf535789@eucas1p2.samsung.com>
2022-05-25 15:49 ` [PATCH v6 8/8] dm: " Pankaj Raghav
2022-05-25 23:13 ` Damien Le Moal
2022-05-26 8:12 ` Pankaj Raghav [this message]
2022-05-26 8:25 ` Damien Le Moal
2022-05-30 14:59 ` Pankaj Raghav
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=0bb57f61-9a33-0273-4b89-2cdf042e56dd@samsung.com \
--to=p.raghav@samsung.com \
--cc=Johannes.Thumshirn@wdc.com \
--cc=axboe@kernel.dk \
--cc=damien.lemoal@opensource.wdc.com \
--cc=dm-devel@redhat.com \
--cc=dsterba@suse.com \
--cc=gost.dev@samsung.com \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=jaegeuk@kernel.org \
--cc=jiangbo.365@bytedance.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=snitzer@redhat.com \
/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
all inboxes | Powered by JetHome®