block: account io: kill atomic operations
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest4 patches 7 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/4 | block: partition: introduce hd_free_part()block/ block/ include/ | +8 | 0 replies | |
| 2/4 | block: partition: convert percpu refblock/ block/ include/ | +27 | 1 reply | |
| 3/4 | block: partition: introduce 'cpu' para to part_inc|dec_in_flightblock/ block/ block/ +2 more | +9 | 0 replies | |
| 4/4 | block: account io: convert part->in_fligh[] into percpu variableblock/ block/ drivers/ +1 more | +28 | 1 reply |
Reviews trailers per patch
1 of 4 patches has a Reviewed-by or Acked-by.
| Patch | Tejun Heo |
|---|---|
| 1/4 | |
| 2/4 | A-b |
| 3/4 | |
| 4/4 |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH 0/4] block: account io: kill atomic operations
Hi,
This patches kills two kinds of atomic operations in block accounting I/O.
The 1st two patches convert atomic refcount of partition into percpu refcount.
The 2nd two patches converts partition->in_flight[] into percpu variable.
With this change, ~15% throughput improvement can be observed when running fio(randread) over null blk in a dual-socket environment.
block/bio.c | 4 ++-- block/blk-core.c | 5 ++-- block/blk-merge.c | 2 +- block/genhd.c | 9 ++++--- block/partition-generic.c | 17 ++++++------- drivers/md/dm.c | 10 ++++---- drivers/nvdimm/core.c | 4 ++-- include/linux/genhd.h | 61 +++++++++++++++++++++++++++++++++-------------- 8 files changed, 72 insertions(+), 40 deletions(-)
Thanks,
Ming