drbd: set ->bi_bdev in drbd_req_new
Make sure the newly allocated bio has the correct bi_bdev set from the start. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Mike Snitzer <snitzer@redhat.com> Link: https://lore.kernel.org/r/20220202160109.108149-2-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
78e3437450
commit
c347a787e3
|
@ -31,6 +31,7 @@ static struct drbd_request *drbd_req_new(struct drbd_device *device, struct bio
|
|||
memset(req, 0, sizeof(*req));
|
||||
|
||||
req->private_bio = bio_clone_fast(bio_src, GFP_NOIO, &drbd_io_bio_set);
|
||||
bio_set_dev(req->private_bio, device->ldev->backing_bdev);
|
||||
req->private_bio->bi_private = req;
|
||||
req->private_bio->bi_end_io = drbd_request_endio;
|
||||
|
||||
|
@ -1151,8 +1152,6 @@ drbd_submit_req_private_bio(struct drbd_request *req)
|
|||
else
|
||||
type = DRBD_FAULT_DT_RD;
|
||||
|
||||
bio_set_dev(bio, device->ldev->backing_bdev);
|
||||
|
||||
/* State may have changed since we grabbed our reference on the
|
||||
* ->ldev member. Double check, and short-circuit to endio.
|
||||
* In case the last activity log transaction failed to get on
|
||||
|
|
Loading…
Reference in New Issue