@@ -2017,6 +2017,7 @@ static void process_checks(struct r1bio *r1_bio)
int j;
int size;
int error;
+ struct bio_vec *bi;
struct bio *b = r1_bio->bios[i];
if (b->bi_end_io != end_sync_read)
continue;
@@ -2033,9 +2034,7 @@ static void process_checks(struct r1bio *r1_bio)
b->bi_private = r1_bio;
size = b->bi_iter.bi_size;
- for (j = 0; j < vcnt ; j++) {
- struct bio_vec *bi;
- bi = &b->bi_io_vec[j];
+ bio_for_each_segment_all(bi, b, j) {
bi->bv_offset = 0;
if (size > PAGE_SIZE)
bi->bv_len = PAGE_SIZE;
Avoid to direct access to bvec table. Signed-off-by: Ming Lei <tom.leiming@gmail.com> --- drivers/md/raid1.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)