OSDN Git Service

nvme-multipath: stop using ->queuedata
authorChristoph Hellwig <hch@lst.de>
Sun, 29 Mar 2020 17:41:38 +0000 (19:41 +0200)
committerJens Axboe <axboe@kernel.dk>
Sat, 9 May 2020 22:18:36 +0000 (16:18 -0600)
nvme-multipath already uses the gendisk private data, not need to
also set up the request_queue queuedata and use it in one place only.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/multipath.c

index 9f28449..5f5537d 100644 (file)
@@ -294,7 +294,7 @@ static bool nvme_available_path(struct nvme_ns_head *head)
 static blk_qc_t nvme_ns_head_make_request(struct request_queue *q,
                struct bio *bio)
 {
-       struct nvme_ns_head *head = q->queuedata;
+       struct nvme_ns_head *head = bio->bi_disk->private_data;
        struct device *dev = disk_to_dev(head->disk);
        struct nvme_ns *ns;
        blk_qc_t ret = BLK_QC_T_NONE;
@@ -378,7 +378,6 @@ int nvme_mpath_alloc_disk(struct nvme_ctrl *ctrl, struct nvme_ns_head *head)
        q = blk_alloc_queue(nvme_ns_head_make_request, ctrl->numa_node);
        if (!q)
                goto out;
-       q->queuedata = head;
        blk_queue_flag_set(QUEUE_FLAG_NONROT, q);
        /* set to a default value for 512 until disk is validated */
        blk_queue_logical_block_size(q, 512);