[PATCH v2 0/3] on top of for-5.16/block

From: Pavel Begunkov
Date: Wed Oct 13 2021 - 04:58:11 EST


./io_uring -d32 -s32 -c32 -b512 -p1 /dev/nullb0
~3.3 MIOPS vs 3.5 MIOPS, so gives around extra ~4-5%.

The main part is caching struct block_device + some inlining.

v2: without applied patches, merge previous 6/6 into the second patch
get rid of helpers (Jens, Christoph)
kill bdev_inode and move inode into bdev (Christoph)

Pavel Begunkov (3):
block: cache bdev in struct file for raw bdev IO
block: don't hide inode from block_device users
blk-mq: optimise *end_request non-stat path

block/bdev.c | 44 ++++++++++-----------------------------
block/blk-mq.c | 18 +++++++---------
block/fops.c | 43 ++++++++++++++++----------------------
include/linux/blk_types.h | 1 +
include/linux/blkdev.h | 8 +++++--
5 files changed, 44 insertions(+), 70 deletions(-)

--
2.33.0