[PATCH v1 02/27] block: drbd: use bio_get_base_vec() to retrieve the 1st bvec
From: Ming Lei
Date: Thu Apr 14 2016 - 08:12:55 EST
Signed-off-by: Ming Lei <tom.leiming@xxxxxxxxx>
---
drivers/block/drbd/drbd_bitmap.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/block/drbd/drbd_bitmap.c b/drivers/block/drbd/drbd_bitmap.c
index 92d6fc0..ccbd1e0 100644
--- a/drivers/block/drbd/drbd_bitmap.c
+++ b/drivers/block/drbd/drbd_bitmap.c
@@ -938,7 +938,9 @@ static void drbd_bm_endio(struct bio *bio)
struct drbd_bm_aio_ctx *ctx = bio->bi_private;
struct drbd_device *device = ctx->device;
struct drbd_bitmap *b = device->bitmap;
- unsigned int idx = bm_page_to_idx(bio->bi_io_vec[0].bv_page);
+ /* single bvec bio */
+ const struct bio_vec *bvec = bio_get_base_vec(bio);
+ unsigned int idx = bm_page_to_idx(bvec->bv_page);
if ((ctx->flags & BM_AIO_COPY_PAGES) == 0 &&
!bm_test_page_unchanged(b->bm_pages[idx]))
--
1.9.1