mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 01:51:34 +00:00
btrfs: use bvec_kmap_local in btrfs_csum_one_bio
Using local kmaps slightly reduces the chances to stray writes, and the bvec interface cleans up the code a little bit. Reviewed-by: Nikolay Borisov <nborisov@suse.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
11b66fa6ee
commit
3dcfbcce1b
@ -708,12 +708,12 @@ blk_status_t btrfs_csum_one_bio(struct btrfs_inode *inode, struct bio *bio,
|
|||||||
index = 0;
|
index = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
data = kmap_atomic(bvec.bv_page);
|
data = bvec_kmap_local(&bvec);
|
||||||
crypto_shash_digest(shash, data + bvec.bv_offset
|
crypto_shash_digest(shash,
|
||||||
+ (i * fs_info->sectorsize),
|
data + (i * fs_info->sectorsize),
|
||||||
fs_info->sectorsize,
|
fs_info->sectorsize,
|
||||||
sums->sums + index);
|
sums->sums + index);
|
||||||
kunmap_atomic(data);
|
kunmap_local(data);
|
||||||
index += fs_info->csum_size;
|
index += fs_info->csum_size;
|
||||||
offset += fs_info->sectorsize;
|
offset += fs_info->sectorsize;
|
||||||
this_sum_bytes += fs_info->sectorsize;
|
this_sum_bytes += fs_info->sectorsize;
|
||||||
|
Loading…
Reference in New Issue
Block a user