block: change plugging to use a singly linked list
authorJens Axboe <axboe@kernel.dk>
Mon, 18 Oct 2021 16:12:12 +0000 (10:12 -0600)
committerJens Axboe <axboe@kernel.dk>
Tue, 19 Oct 2021 15:21:42 +0000 (09:21 -0600)
commitbc490f81731e181b07b8d7577425c06ae91692c8
treeabe26a3d3c309e8a5d62e61e50ccd8a13036aebb
parent480d42dc001bbfe953825a92073012fcd5a99161
block: change plugging to use a singly linked list

Use a singly linked list for the blk_plug. This saves 8 bytes in the
blk_plug struct, and makes for faster list manipulations than doubly
linked lists. As we don't use the doubly linked lists for anything,
singly linked is just fine.

This yields a bump in default (merging enabled) performance from 7.0
to 7.1M IOPS, and ~7.5M IOPS with merging disabled.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-core.c
block/blk-merge.c
block/blk-mq.c
include/linux/blkdev.h