virtio_blk: use bvec_set_virt to initialize special_vec
authorChristoph Hellwig <hch@lst.de>
Fri, 3 Feb 2023 15:06:20 +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>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Link: https://lore.kernel.org/r/20230203150634.3199647-10-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/virtio_blk.c

index 6a77fa9174288089f803e3a698c0382e2d128381..dc6e9b989910b01352ebed12c923e6e8950e7a17 100644 (file)
@@ -170,9 +170,7 @@ static int virtblk_setup_discard_write_zeroes_erase(struct request *req, bool un
 
        WARN_ON_ONCE(n != segments);
 
-       req->special_vec.bv_page = virt_to_page(range);
-       req->special_vec.bv_offset = offset_in_page(range);
-       req->special_vec.bv_len = sizeof(*range) * segments;
+       bvec_set_virt(&req->special_vec, range, sizeof(*range) * segments);
        req->rq_flags |= RQF_SPECIAL_PAYLOAD;
 
        return 0;