mbox series

[v4,0/3] block/diskstats: more accurate io_ticks and optimization

Message ID 158514148436.7009.1234367408038809210.stgit@buzz (mailing list archive)
Headers show
Series block/diskstats: more accurate io_ticks and optimization | expand

Message

Konstantin Khlebnikov March 25, 2020, 1:07 p.m. UTC
Simplified estimation for io_ticks introduced in patch
https://lore.kernel.org/linux-block/20181206164122.2166-5-snitzer@redhat.com/
could be very inaccurate for request longer than jiffy (i.e. any HDD)

There is at least one another report about this:
https://lore.kernel.org/linux-block/20200324031942.GA3060@ming.t460p/
See detail in comment for first patch.

v1: https://lore.kernel.org/lkml/155413438394.3201.15211440151043943989.stgit@buzz/
v2: https://lore.kernel.org/lkml/158314549775.1788.6529015932237292177.stgit@buzz/
v3: https://lore.kernel.org/lkml/158503038812.1955.7827988255138056389.stgit@buzz/
 * update documentation
 * rebase to current linux-next
 * fix compilation for CONFIG_SMP=n
v4:
 * rebase to for-5.7/block
 * make part_stat_read_all static in block/genhd.c

---

Konstantin Khlebnikov (3):
      block/diskstats: more accurate approximation of io_ticks for slow disks
      block/diskstats: accumulate all per-cpu counters in one pass
      block/diskstats: replace time_in_queue with sum of request times


 Documentation/admin-guide/iostats.rst |    5 +-
 block/bio.c                           |    9 +--
 block/blk-core.c                      |    5 +-
 block/genhd.c                         |  109 +++++++++++++++++++++++----------
 include/linux/genhd.h                 |    6 --
 5 files changed, 88 insertions(+), 46 deletions(-)

--
Signature

Comments

Jens Axboe March 25, 2020, 2:49 p.m. UTC | #1
On 3/25/20 7:07 AM, Konstantin Khlebnikov wrote:
> Simplified estimation for io_ticks introduced in patch
> https://lore.kernel.org/linux-block/20181206164122.2166-5-snitzer@redhat.com/
> could be very inaccurate for request longer than jiffy (i.e. any HDD)
> 
> There is at least one another report about this:
> https://lore.kernel.org/linux-block/20200324031942.GA3060@ming.t460p/
> See detail in comment for first patch.
> 
> v1: https://lore.kernel.org/lkml/155413438394.3201.15211440151043943989.stgit@buzz/
> v2: https://lore.kernel.org/lkml/158314549775.1788.6529015932237292177.stgit@buzz/
> v3: https://lore.kernel.org/lkml/158503038812.1955.7827988255138056389.stgit@buzz/
>  * update documentation
>  * rebase to current linux-next
>  * fix compilation for CONFIG_SMP=n
> v4:
>  * rebase to for-5.7/block
>  * make part_stat_read_all static in block/genhd.c

Applied for 5.7, thanks.