Skip to content

Commit

Permalink
ext2: add missing brelse in ext2_new_blocks()
Browse files Browse the repository at this point in the history
Fix missing brelse of bitmap_bh in the case of retry.

Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Chengguang Xu <[email protected]>
Signed-off-by: Jan Kara <[email protected]>
  • Loading branch information
cgxu519 authored and jankara committed Oct 22, 2019
1 parent 158be76 commit ba1af2e
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions fs/ext2/balloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1313,6 +1313,13 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal,
if (free_blocks > 0) {
grp_target_blk = ((goal - le32_to_cpu(es->s_first_data_block)) %
EXT2_BLOCKS_PER_GROUP(sb));
/*
* In case we retry allocation (due to fs reservation not
* working out or fs corruption), the bitmap_bh is non-null
* pointer and we have to release it before calling
* read_block_bitmap().
*/
brelse(bitmap_bh);
bitmap_bh = read_block_bitmap(sb, group_no);
if (!bitmap_bh)
goto io_error;
Expand Down

0 comments on commit ba1af2e

Please sign in to comment.