From: Pankaj Raghav <p.raghav@samsung.com> To: damien.lemoal@opensource.wdc.com, hch@lst.de, axboe@kernel.dk, snitzer@kernel.org, Johannes.Thumshirn@wdc.com Cc: matias.bjorling@wdc.com, gost.dev@samsung.com, linux-kernel@vger.kernel.org, hare@suse.de, linux-block@vger.kernel.org, pankydev8@gmail.com, bvanassche@acm.org, jaegeuk@kernel.org, dm-devel@redhat.com, linux-nvme@lists.infradead.org, Pankaj Raghav <p.raghav@samsung.com> Subject: [PATCH v8 10/11] dm: call dm_zone_endio after the target endio callback for zoned devices Date: Wed, 27 Jul 2022 18:22:44 +0200 [thread overview] Message-ID: <20220727162245.209794-11-p.raghav@samsung.com> (raw) In-Reply-To: <20220727162245.209794-1-p.raghav@samsung.com> dm_zone_endio() updates the bi_sector of orig bio for zoned devices that uses either native append or append emulation and it is called before the endio of the target. But target endio can still update the clone bio after dm_zone_endio is called, thereby, the orig bio does not contain the updated information anymore. Call dm_zone_endio for zoned devices after calling the target's endio function Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> --- drivers/md/dm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 03ac6143b8aa..bc410ee04004 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -1123,10 +1123,6 @@ static void clone_endio(struct bio *bio) disable_write_zeroes(md); } - if (static_branch_unlikely(&zoned_enabled) && - unlikely(bdev_is_zoned(bio->bi_bdev))) - dm_zone_endio(io, bio); - if (endio) { int r = endio(ti, bio, &error); switch (r) { @@ -1155,6 +1151,10 @@ static void clone_endio(struct bio *bio) } } + if (static_branch_unlikely(&zoned_enabled) && + unlikely(bdev_is_zoned(bio->bi_bdev))) + dm_zone_endio(io, bio); + if (static_branch_unlikely(&swap_bios_enabled) && unlikely(swap_bios_limit(ti, bio))) up(&md->swap_bios_semaphore); -- 2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Pankaj Raghav <p.raghav@samsung.com> To: damien.lemoal@opensource.wdc.com, hch@lst.de, axboe@kernel.dk, snitzer@kernel.org, Johannes.Thumshirn@wdc.com Cc: Pankaj Raghav <p.raghav@samsung.com>, bvanassche@acm.org, pankydev8@gmail.com, gost.dev@samsung.com, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, dm-devel@redhat.com, jaegeuk@kernel.org, matias.bjorling@wdc.com Subject: [dm-devel] [PATCH v8 10/11] dm: call dm_zone_endio after the target endio callback for zoned devices Date: Wed, 27 Jul 2022 18:22:44 +0200 [thread overview] Message-ID: <20220727162245.209794-11-p.raghav@samsung.com> (raw) In-Reply-To: <20220727162245.209794-1-p.raghav@samsung.com> dm_zone_endio() updates the bi_sector of orig bio for zoned devices that uses either native append or append emulation and it is called before the endio of the target. But target endio can still update the clone bio after dm_zone_endio is called, thereby, the orig bio does not contain the updated information anymore. Call dm_zone_endio for zoned devices after calling the target's endio function Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> --- drivers/md/dm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 03ac6143b8aa..bc410ee04004 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -1123,10 +1123,6 @@ static void clone_endio(struct bio *bio) disable_write_zeroes(md); } - if (static_branch_unlikely(&zoned_enabled) && - unlikely(bdev_is_zoned(bio->bi_bdev))) - dm_zone_endio(io, bio); - if (endio) { int r = endio(ti, bio, &error); switch (r) { @@ -1155,6 +1151,10 @@ static void clone_endio(struct bio *bio) } } + if (static_branch_unlikely(&zoned_enabled) && + unlikely(bdev_is_zoned(bio->bi_bdev))) + dm_zone_endio(io, bio); + if (static_branch_unlikely(&swap_bios_enabled) && unlikely(swap_bios_limit(ti, bio))) up(&md->swap_bios_semaphore); -- 2.25.1 -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
next prev parent reply other threads:[~2022-07-27 16:25 UTC|newest] Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <CGME20220727162246eucas1p1a758799f13d36ba99d30bf92cc5e2754@eucas1p1.samsung.com> 2022-07-27 16:22 ` [PATCH v8 00/11] support non power of 2 zoned device Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220727162247eucas1p203fc14aa17ecbcb3e6215d5304bb0c85@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 01/11] block: make bdev_nr_zones and disk_zone_no generic for npo2 zsze Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 2:54 ` Damien Le Moal 2022-07-28 2:54 ` [dm-devel] " Damien Le Moal [not found] ` <CGME20220727162248eucas1p2ff8c3c2b021bedcae3960024b4e269e9@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 02/11] block: allow blk-zoned devices to have non-power-of-2 zone size Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-27 23:16 ` Bart Van Assche 2022-07-27 23:16 ` [dm-devel] " Bart Van Assche 2022-07-28 12:11 ` Pankaj Raghav 2022-07-28 12:11 ` [dm-devel] " Pankaj Raghav 2022-07-28 13:29 ` Bart Van Assche 2022-07-28 13:29 ` [dm-devel] " Bart Van Assche 2022-07-29 9:09 ` Pankaj Raghav 2022-07-29 9:09 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:07 ` Damien Le Moal 2022-07-28 3:07 ` [dm-devel] " Damien Le Moal 2022-07-28 12:24 ` Pankaj Raghav 2022-07-28 12:24 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220727162249eucas1p28fa44c840e590f6f1b53e0cc12ee3771@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 03/11] nvme: zns: Allow ZNS drives that have non-power_of_2 " Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220727162250eucas1p133e8a814fee934f7161866122ef93273@eucas1p1.samsung.com> 2022-07-27 16:22 ` [PATCH v8 04/11] nvmet: Allow ZNS target to support non-power_of_2 zone sizes Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:09 ` Damien Le Moal 2022-07-28 3:09 ` [dm-devel] " Damien Le Moal 2022-07-29 7:45 ` Pankaj Raghav 2022-07-29 7:45 ` Pankaj Raghav [not found] ` <CGME20220727162251eucas1p12939ac3864fd8705ae139eb2d1087d8f@eucas1p1.samsung.com> 2022-07-27 16:22 ` [PATCH v8 05/11] null_blk: allow non power of 2 zoned devices Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-27 21:59 ` Chaitanya Kulkarni 2022-07-27 21:59 ` [dm-devel] " Chaitanya Kulkarni 2022-07-29 7:51 ` Pankaj Raghav 2022-07-29 7:51 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:14 ` Damien Le Moal 2022-07-28 3:14 ` [dm-devel] " Damien Le Moal [not found] ` <CGME20220727162252eucas1p25be8b79231334fa0c759c2475859e93b@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 06/11] zonefs: " Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:16 ` Damien Le Moal 2022-07-28 3:16 ` [dm-devel] " Damien Le Moal [not found] ` <CGME20220727162253eucas1p1a5912e0494f6918504cc8ff15ad5d31f@eucas1p1.samsung.com> 2022-07-27 16:22 ` [PATCH v8 07/11] dm-zoned: ensure only power of 2 zone sizes are allowed Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:18 ` Damien Le Moal 2022-07-28 3:18 ` [dm-devel] " Damien Le Moal 2022-07-28 12:15 ` David Sterba 2022-07-28 12:15 ` [dm-devel] " David Sterba 2022-07-29 8:00 ` Pankaj Raghav 2022-07-29 8:00 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220727162254eucas1p1fd990f746d9f9870b8d58ee0bd01fedd@eucas1p1.samsung.com> 2022-07-27 16:22 ` [PATCH v8 08/11] dm-zone: use generic helpers to calculate offset from zone start Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:20 ` Damien Le Moal 2022-07-28 3:20 ` [dm-devel] " Damien Le Moal [not found] ` <CGME20220727162255eucas1p2945c6dca42b799bb3b4abf3edb83dde8@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 09/11] dm-table: allow non po2 zoned devices Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 3:22 ` Damien Le Moal 2022-07-28 3:22 ` [dm-devel] " Damien Le Moal [not found] ` <CGME20220727162256eucas1p284a15532173cce3eca46eee0cee3acdd@eucas1p2.samsung.com> 2022-07-27 16:22 ` Pankaj Raghav [this message] 2022-07-27 16:22 ` [dm-devel] [PATCH v8 10/11] dm: call dm_zone_endio after the target endio callback for " Pankaj Raghav 2022-07-28 3:25 ` Damien Le Moal 2022-07-28 3:25 ` [dm-devel] " Damien Le Moal 2022-07-29 8:48 ` Pankaj Raghav 2022-07-29 8:48 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220727162257eucas1p2848a75c4aa7e559abb5d9ae0fbd374c1@eucas1p2.samsung.com> 2022-07-27 16:22 ` [PATCH v8 11/11] dm: add power-of-2 zoned target for non-power-of-2 " Pankaj Raghav 2022-07-27 16:22 ` [dm-devel] " Pankaj Raghav 2022-07-28 4:33 ` Damien Le Moal 2022-07-28 4:33 ` [dm-devel] " Damien Le Moal 2022-08-01 8:35 ` Pankaj Raghav 2022-08-01 8:35 ` [dm-devel] " Pankaj Raghav 2022-07-27 23:19 ` [PATCH v8 00/11] support non power of 2 zoned device Bart Van Assche 2022-07-27 23:19 ` [dm-devel] " Bart Van Assche 2022-07-28 1:52 ` Damien Le Moal 2022-07-28 1:52 ` [dm-devel] " Damien Le Moal 2022-07-28 2:58 ` Bart Van Assche 2022-07-28 2:58 ` [dm-devel] " Bart Van Assche 2022-07-28 3:28 ` Damien Le Moal 2022-07-28 3:28 ` [dm-devel] " Damien Le Moal 2022-07-28 11:57 ` Pankaj Raghav 2022-07-28 11:57 ` [dm-devel] " Pankaj Raghav 2022-07-28 13:30 ` Bart Van Assche 2022-07-28 13:30 ` [dm-devel] " Bart Van Assche
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=20220727162245.209794-11-p.raghav@samsung.com \ --to=p.raghav@samsung.com \ --cc=Johannes.Thumshirn@wdc.com \ --cc=axboe@kernel.dk \ --cc=bvanassche@acm.org \ --cc=damien.lemoal@opensource.wdc.com \ --cc=dm-devel@redhat.com \ --cc=gost.dev@samsung.com \ --cc=hare@suse.de \ --cc=hch@lst.de \ --cc=jaegeuk@kernel.org \ --cc=linux-block@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvme@lists.infradead.org \ --cc=matias.bjorling@wdc.com \ --cc=pankydev8@gmail.com \ --cc=snitzer@kernel.org \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.