|
@@ -1284,7 +1284,7 @@ static int crypt_map(struct dm_target *ti, struct bio *bio,
|
|
|
return DM_MAPIO_REMAPPED;
|
|
|
}
|
|
|
|
|
|
- io = crypt_io_alloc(ti, bio, bio->bi_sector - ti->begin);
|
|
|
+ io = crypt_io_alloc(ti, bio, dm_target_offset(ti, bio->bi_sector));
|
|
|
|
|
|
if (bio_data_dir(io->base_bio) == READ)
|
|
|
kcryptd_queue_io(io);
|
|
@@ -1406,7 +1406,7 @@ static int crypt_merge(struct dm_target *ti, struct bvec_merge_data *bvm,
|
|
|
return max_size;
|
|
|
|
|
|
bvm->bi_bdev = cc->dev->bdev;
|
|
|
- bvm->bi_sector = cc->start + bvm->bi_sector - ti->begin;
|
|
|
+ bvm->bi_sector = cc->start + dm_target_offset(ti, bvm->bi_sector);
|
|
|
|
|
|
return min(max_size, q->merge_bvec_fn(q, bvm, biovec));
|
|
|
}
|