mbox series

[v3,0/7] per-cpu in_flight counters for bio-based drivers

Message ID 20181205202433.95823-1-snitzer@redhat.com (mailing list archive)
Headers show
Series per-cpu in_flight counters for bio-based drivers | expand

Message

Mike Snitzer Dec. 5, 2018, 8:24 p.m. UTC
Hi,

This v3 adds "block: stop passing 'cpu' to all percpu stats methods"
before switching over to percpu counters.

Thanks,
Mike

Mike Snitzer (2):
  dm rq: leverage blk_mq_queue_busy() to check for outstanding IO
  block: stop passing 'cpu' to all percpu stats methods

Mikulas Patocka (5):
  dm: dont rewrite dm_disk(md)->part0.in_flight
  block: delete part_round_stats and switch to less precise counting
  block: switch to per-cpu in-flight counters
  block: return just one value from part_in_flight
  dm: remove the pending IO accounting

 block/bio.c               | 36 ++++++++++++++----
 block/blk-core.c          | 80 ++++++---------------------------------
 block/blk-merge.c         |  4 +-
 block/blk-mq.c            | 12 +++---
 block/blk-mq.h            |  3 +-
 block/genhd.c             | 61 ++++++++++++++++++-----------
 block/partition-generic.c | 10 ++---
 drivers/md/dm-core.h      |  2 -
 drivers/md/dm-rq.c        |  9 ++---
 drivers/md/dm.c           | 36 ++++++++----------
 drivers/md/md.c           |  7 ++--
 include/linux/genhd.h     | 33 ++++++++--------
 12 files changed, 125 insertions(+), 168 deletions(-)

Comments

Jens Axboe Dec. 6, 2018, 2:43 a.m. UTC | #1
On 12/5/18 1:24 PM, Mike Snitzer wrote:
> Hi,
> 
> This v3 adds "block: stop passing 'cpu' to all percpu stats methods"
> before switching over to percpu counters.

I gave this a shot, with the hope of being able to use it for blk-mq
as well. The tldr is that it's still slower than the tag iteration,
but that isn't a show stopper for a generic implementation. But
unfortunately it fails for queue size results, iostat just shows
0 for the average queue size.