diff options
author | Nikolay Borisov <nborisov@suse.com> | 2017-02-20 06:50:54 -0500 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2017-02-28 05:30:09 -0500 |
commit | f898ac6ae339782bc304b2b15c9e187e438da9f7 (patch) | |
tree | c5f24586f325f8cc832cddd5675f44643c6924df | |
parent | 0970a22e58d4c49f2c3e84519613a9db8f00f579 (diff) |
btrfs: make check_compressed_csum take btrfs_inode
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | fs/btrfs/compression.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index 9ce85d5e5cae..f32e86b61240 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c | |||
@@ -100,7 +100,7 @@ static struct bio *compressed_bio_alloc(struct block_device *bdev, | |||
100 | return btrfs_bio_alloc(bdev, first_byte >> 9, BIO_MAX_PAGES, gfp_flags); | 100 | return btrfs_bio_alloc(bdev, first_byte >> 9, BIO_MAX_PAGES, gfp_flags); |
101 | } | 101 | } |
102 | 102 | ||
103 | static int check_compressed_csum(struct inode *inode, | 103 | static int check_compressed_csum(struct btrfs_inode *inode, |
104 | struct compressed_bio *cb, | 104 | struct compressed_bio *cb, |
105 | u64 disk_start) | 105 | u64 disk_start) |
106 | { | 106 | { |
@@ -111,7 +111,7 @@ static int check_compressed_csum(struct inode *inode, | |||
111 | u32 csum; | 111 | u32 csum; |
112 | u32 *cb_sum = &cb->sums; | 112 | u32 *cb_sum = &cb->sums; |
113 | 113 | ||
114 | if (BTRFS_I(inode)->flags & BTRFS_INODE_NODATASUM) | 114 | if (inode->flags & BTRFS_INODE_NODATASUM) |
115 | return 0; | 115 | return 0; |
116 | 116 | ||
117 | for (i = 0; i < cb->nr_pages; i++) { | 117 | for (i = 0; i < cb->nr_pages; i++) { |
@@ -124,8 +124,7 @@ static int check_compressed_csum(struct inode *inode, | |||
124 | kunmap_atomic(kaddr); | 124 | kunmap_atomic(kaddr); |
125 | 125 | ||
126 | if (csum != *cb_sum) { | 126 | if (csum != *cb_sum) { |
127 | btrfs_print_data_csum_error(BTRFS_I(inode), | 127 | btrfs_print_data_csum_error(inode, disk_start, csum, |
128 | disk_start, csum, | ||
129 | *cb_sum, cb->mirror_num); | 128 | *cb_sum, cb->mirror_num); |
130 | ret = -EIO; | 129 | ret = -EIO; |
131 | goto fail; | 130 | goto fail; |
@@ -166,7 +165,7 @@ static void end_compressed_bio_read(struct bio *bio) | |||
166 | goto out; | 165 | goto out; |
167 | 166 | ||
168 | inode = cb->inode; | 167 | inode = cb->inode; |
169 | ret = check_compressed_csum(inode, cb, | 168 | ret = check_compressed_csum(BTRFS_I(inode), cb, |
170 | (u64)bio->bi_iter.bi_sector << 9); | 169 | (u64)bio->bi_iter.bi_sector << 9); |
171 | if (ret) | 170 | if (ret) |
172 | goto csum_failed; | 171 | goto csum_failed; |