FAILED: patch "[PATCH] dm: revert partial fix for redundant bio-based IO accounting" failed to apply to 5.10-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 5.10-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f524d9c95fab54783d0038f7a3e8c014d5b56857 Mon Sep 17 00:00:00 2001
From: Mike Snitzer <[email protected]>
Date: Fri, 28 Jan 2022 10:58:40 -0500
Subject: [PATCH] dm: revert partial fix for redundant bio-based IO accounting
Reverts a1e1cb72d9649 ("dm: fix redundant IO accounting for bios that need splitting") because it was too narrow in scope (only addressed redundant 'sectors[]' accounting and not ios, nsecs[], etc).
Signed-off-by Mike Snitzer <[email protected]>
Signed-off-by Jens Axboe <[email protected]>
drivers/md/dm.c +0 -15
@@ -1442,9 +1442,6 @@ static void init_clone_info(struct clone_info *ci, struct mapped_device *md, ci->sector = bio->bi_iter.bi_sector; } -#define __dm_part_stat_sub (part, field, subnd) \ - (part_stat_get(part, field) -= (subnd)) -/* * Entry point to split a bio into clones and submit them to the targets. */
@@ -1480,18 +1477,6 @@ static void __split_and_process_bio(struct mapped_device *md, GFP_NOIO, &md->queue->bio_split); ci.io->orig_bio = b; -/* -* Adjust IO stats for each split, otherwise upon queue -* reentry there will be redundant IO accounting. -* NOTE: this is a stop-gap fix, a proper fix involves -* significant refactoring of DM core's bio splitting -* (by eliminating DM's splitting and just using bio_split) -*/ -part_stat_lock (); -__dm_part_stat_sub (dm_disk (md)->part0, - sectors[op_stat_group (bio_op (bio))], ci.sector_count); -part_stat_unlock (); -bio_chain (b, bio);trace_block_split (b, bio->bi_iter.bi_sector);submit_bio_noacct (bio);