Re: [PATCH v2 0/8] md: fix and refactor io accounting and 'active_io'

From: Song Liu
Date: Wed Jun 21 2023 - 19:11:44 EST


On Wed, Jun 21, 2023 at 1:52 AM Yu Kuai <yukuai1@xxxxxxxxxxxxxxx> wrote:
>
> From: Yu Kuai <yukuai3@xxxxxxxxxx>
>
> Changes in v2:
> - fix some typos;
> - add review tag;
>
> This patchset do following things:
> - make io accounting for all raid levels consistent, patch 1, 3-5;
> - enable io accounting for all raid levels, patch 6-8;
> - hold 'active_io' before io start to dispatch, and release 'active_io'
> when io is done, make mddev_suspend() will wait for io to be done, patch 2
>
> This patch set also prepare to synchronize io and raid configuration, make
> it possible to use 'active_io' in common layer to judge if normal io is
> in flight.
>
> Yu Kuai (8):
> md: move initialization and destruction of 'io_acct_set' to md.c
> md: also clone new io if io accounting is disabled
> raid5: fix missing io accounting in raid5_align_endio()
> md/raid1: switch to use md_account_bio() for io accounting
> md/raid10: switch to use md_account_bio() for io accounting
> md/md-multipath: enable io accounting
> md/md-linear: enable io accounting
> md/md-faulty: enable io accounting

Applied to md-next.

Thanks,
Song

>
> drivers/md/md-faulty.c | 2 +
> drivers/md/md-linear.c | 1 +
> drivers/md/md-multipath.c | 1 +
> drivers/md/md.c | 78 +++++++++++++++++++--------------------
> drivers/md/md.h | 6 +--
> drivers/md/raid0.c | 16 +-------
> drivers/md/raid1.c | 14 +++----
> drivers/md/raid1.h | 1 -
> drivers/md/raid10.c | 20 +++++-----
> drivers/md/raid10.h | 1 -
> drivers/md/raid5.c | 70 ++++++++++-------------------------
> 11 files changed, 79 insertions(+), 131 deletions(-)
>
> --
> 2.39.2
>