@@ -226,7 +226,8 @@ static void btrfs_check_read_bio(struct btrfs_bio *bbio,
offset += sectorsize;
}
- btrfs_bio_free_csum(bbio);
+ if (bbio->csum != bbio->csum_inline)
+ kfree(bbio->csum);
if (unlikely(fbio))
btrfs_repair_done(fbio);
@@ -94,16 +94,6 @@ static inline void btrfs_bio_end_io(struct btrfs_bio *bbio, blk_status_t status)
bbio->end_io(bbio);
}
-static inline void btrfs_bio_free_csum(struct btrfs_bio *bbio)
-{
- if (bbio->is_metadata)
- return;
- if (bbio->csum != bbio->csum_inline) {
- kfree(bbio->csum);
- bbio->csum = NULL;
- }
-}
-
/*
* Iterate through a btrfs_bio (@bbio) on a per-sector basis.
*
btrfs_bio_free_csum has only one caller left, and that calle is always for an data inode and doesn't need zeroing of the csum pointer as that pointer will never be touched again. Just open code the conditional kfree there. Signed-off-by: Christoph Hellwig <hch@lst.de> --- fs/btrfs/bio.c | 3 ++- fs/btrfs/bio.h | 10 ---------- 2 files changed, 2 insertions(+), 11 deletions(-)