Re: [PATCH v4] md: improve io stats accounting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 3, 2020 at 2:27 AM Guoqing Jiang
<guoqing.jiang@xxxxxxxxxxxxxxx> wrote:
>
> Looks good, Acked-by: Guoqing Jiang <guoqing.jiang@xxxxxxxxxxxxxxx>
>
> Thanks,
> Guoqing
>
> On 7/3/20 11:13 AM, Artur Paszkiewicz wrote:
> > Use generic io accounting functions to manage io stats. There was an
> > attempt to do this earlier in commit 18c0b223cf99 ("md: use generic io
> > stats accounting functions to simplify io stat accounting"), but it did
> > not include a call to generic_end_io_acct() and caused issues with
> > tracking in-flight IOs, so it was later removed in commit 74672d069b29
> > ("md: fix md io stats accounting broken").
> >
> > This patch attempts to fix this by using both disk_start_io_acct() and
> > disk_end_io_acct(). To make it possible, a struct md_io is allocated for
> > every new md bio, which includes the io start_time. A new mempool is
> > introduced for this purpose. We override bio->bi_end_io with our own
> > callback and call disk_start_io_acct() before passing the bio to
> > md_handle_request(). When it completes, we call disk_end_io_acct() and
> > the original bi_end_io callback.
> >
> > This adds correct statistics about in-flight IOs and IO processing time,
> > interpreted e.g. in iostat as await, svctm, aqu-sz and %util.
> >
> > It also fixes a situation where too many IOs where reported if a bio was
> > re-submitted to the mddev, because io accounting is now performed only
> > on newly arriving bios.
> >
> > Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@xxxxxxxxx>

Applied to md-next. Thanks!



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux