nvme: use bvec_set_virt to initialize special_vec
authorChristoph Hellwig <hch@lst.de>
Fri, 3 Feb 2023 15:06:18 +0000 (16:06 +0100)
committerJens Axboe <axboe@kernel.dk>
Fri, 3 Feb 2023 15:20:55 +0000 (08:20 -0700)
Use the bvec_set_virt helper to initialize the special_vec.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20230203150634.3199647-8-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/core.c

index 505e16f..7ba1acc 100644 (file)
@@ -806,9 +806,7 @@ static blk_status_t nvme_setup_discard(struct nvme_ns *ns, struct request *req,
        cmnd->dsm.nr = cpu_to_le32(segments - 1);
        cmnd->dsm.attributes = cpu_to_le32(NVME_DSMGMT_AD);
 
-       req->special_vec.bv_page = virt_to_page(range);
-       req->special_vec.bv_offset = offset_in_page(range);
-       req->special_vec.bv_len = alloc_size;
+       bvec_set_virt(&req->special_vec, range, alloc_size);
        req->rq_flags |= RQF_SPECIAL_PAYLOAD;
 
        return BLK_STS_OK;