All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] block/dm: fix bio-based DM IO accounting
@ 2022-01-27 19:07 ` Mike Snitzer
  0 siblings, 0 replies; 10+ messages in thread
From: Mike Snitzer @ 2022-01-27 19:07 UTC (permalink / raw)
  To: axboe; +Cc: dm-devel, linux-block

Hi Jens,

Just over 3 years ago, with commit a1e1cb72d9649 ("dm: fix redundant
IO accounting for bios that need splitting") I focused too narrowly on
fixing the reported potential for redundant accounting for IO totals.
Which, at least mentally for me, papered over how inaccurate all other
bio-based DM's IO accounting is for bios that get split.

This set fixes things up properly by allowing DM to start IO
accounting _after_ IO is submitted and a split is occurred.  The
proper start_time is still established (prior to submission), it is
passed in to a new __bio_start_io_acct().  This eliminates the need
for any DM hack to rewind block core's excessive accounting in the
face of a split bio recursing back to block core.

All said: If you'd provide your Acked-by(s) I'm happy to send this set
to Linus for v5.17-rc (and shepherd the changes into stable@ kernels).
Or you're welcome to pickup this set to send along (I'd obviously
still do any stable@ backports). NOTE: the 3rd patch references the
linux-dm.git commit id for the 1st patch.. so that'll require tweaking
no matter who sends the changes to Linus.

Please advise, thanks.
Mike

Mike Snitzer (3):
  block: add __bio_start_io_acct() to control start_time
  dm: revert partial fix for redundant bio-based IO accounting
  dm: properly fix redundant bio-based IO accounting

 block/blk-core.c       | 27 ++++++++++++++++++++-------
 drivers/md/dm.c        | 20 +++-----------------
 include/linux/blkdev.h |  1 +
 3 files changed, 24 insertions(+), 24 deletions(-)

-- 
2.15.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-01-27 20:01 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-27 19:07 [PATCH 0/3] block/dm: fix bio-based DM IO accounting Mike Snitzer
2022-01-27 19:07 ` [dm-devel] " Mike Snitzer
2022-01-27 19:07 ` [PATCH 1/3] block: add __bio_start_io_acct() to control start_time Mike Snitzer
2022-01-27 19:07   ` [dm-devel] " Mike Snitzer
2022-01-27 20:01   ` Christoph Hellwig
2022-01-27 20:01     ` Christoph Hellwig
2022-01-27 19:07 ` [PATCH 2/3] dm: revert partial fix for redundant bio-based IO accounting Mike Snitzer
2022-01-27 19:07   ` [dm-devel] " Mike Snitzer
2022-01-27 19:07 ` [PATCH 3/3] dm: properly fix " Mike Snitzer
2022-01-27 19:07   ` [dm-devel] " Mike Snitzer

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.