Re: simplify gendisk and request_queue allocation for blk-mq based drivers

Konrad Rzeszutek Wilk
2021-06-04T16:00:35Z

On Wed, Jun 02, 2021 at 09:53:15AM +0300, Christoph Hellwig wrote:
> Hi all,

Hi!

You wouldn't have a nice git repo to pull so one can test it easily?

Thank you!

Cc-ing Boris/Juergen - pls see below xen.
>
> this series is the scond part of cleaning up lifetimes and allocation of
> the gendisk and request_queue structure. It adds a new interface to
> allocate the disk and queue together for blk based drivers, and uses that
> in all drivers that do not have any caveats in their gendisk and
> request_queue lifetime rules.
>
> Diffstat:
> block/blk-mq.c | 91 +++++++++++++++-------------------
> block/blk.h | 1
> block/elevator.c | 2
> drivers/block/amiflop.c | 16 +-----
> drivers/block/aoe/aoeblk.c | 33 ++++--------
> drivers/block/aoe/aoedev.c | 3 -
> drivers/block/ataflop.c | 16 +-----
> drivers/block/floppy.c | 20 +------
> drivers/block/loop.c | 19 ++-----
> drivers/block/nbd.c | 53 +++++++------------
> drivers/block/null_blk/main.c | 11 +---
> drivers/block/paride/pcd.c | 19 +++----
> drivers/block/paride/pd.c | 30 ++++-------
> drivers/block/paride/pf.c | 18 ++----
> drivers/block/ps3disk.c | 36 +++++--------
> drivers/block/rbd.c | 52 ++++++-------------
> drivers/block/rnbd/rnbd-clt.c | 35 +++----------
> drivers/block/sunvdc.c | 47 ++++-------------
> drivers/block/swim.c | 34 +++++-------
> drivers/block/swim3.c | 33 +++++-------
> drivers/block/sx8.c | 23 ++------
> drivers/block/virtio_blk.c | 26 ++-------
> drivers/block/xen-blkfront.c | 96 ++++++++++++++----------------------
> drivers/block/z2ram.c | 15 +----
> drivers/cdrom/gdrom.c | 45 +++++++---------
> drivers/md/dm-rq.c | 9 +--
> drivers/memstick/core/ms_block.c | 25 +++------
> drivers/memstick/core/mspro_block.c | 26 ++++-----
> drivers/mtd/mtd_blkdevs.c | 48 ++++++++----------
> drivers/mtd/ubi/block.c | 68 ++++++++++---------------
> drivers/s390/block/scm_blk.c | 21 ++-----
> include/linux/blk-mq.h | 24 ++++++---
> include/linux/elevator.h | 1
> 33 files changed, 386 insertions(+), 610 deletions(-)