[Ocfs2-devel] [PATCH] ocfs2: unlock bh_state if bg check fails

Gang He ghe at suse.com
Thu Jan 25 00:03:08 PST 2018


Reviewed-by: Gang He <ghe at suse.com>

Thanks
Gang


>>> 
> We should unlock bh_stat if bg->bg_free_bits_count > bg->bg_bits
> 
> Suggested-by: Jan Kara <jack at suse.cz>
> Signed-off-by: Changwei Ge <ge.changwei at h3c.com>
> ---
>  fs/ocfs2/suballoc.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/fs/ocfs2/suballoc.c b/fs/ocfs2/suballoc.c
> index 71f22c8..6fee797 100644
> --- a/fs/ocfs2/suballoc.c
> +++ b/fs/ocfs2/suballoc.c
> @@ -2441,6 +2441,8 @@ static int ocfs2_block_group_clear_bits(handle_t 
> *handle,
>  	}
>  	le16_add_cpu(&bg->bg_free_bits_count, num_bits);
>  	if (le16_to_cpu(bg->bg_free_bits_count) > le16_to_cpu(bg->bg_bits)) {
> +		if (undo_fn)
> +			jbd_unlock_bh_state(group_bh);
>  		return ocfs2_error(alloc_inode->i_sb, "Group descriptor # %llu has bit count 
> %u but claims %u are freed. num_bits %d\n",
>  				   (unsigned long long)le64_to_cpu(bg->bg_blkno),
>  				   le16_to_cpu(bg->bg_bits),
> -- 
> 2.7.4
> 
> 
> _______________________________________________
> Ocfs2-devel mailing list
> Ocfs2-devel at oss.oracle.com 
> https://oss.oracle.com/mailman/listinfo/ocfs2-devel




More information about the Ocfs2-devel mailing list