Commit bc923818 authored by Zhang Qilong's avatar Zhang Qilong Committed by Andreas Gruenbacher

gfs2: fix possible reference leak in gfs2_check_blk_type

In the fail path of gfs2_check_blk_type, forgetting to call
gfs2_glock_dq_uninit will result in rgd_gh reference leak.
Signed-off-by: default avatarZhang Qilong <zhangqilong3@huawei.com>
Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
parent f8394f23
...@@ -2529,13 +2529,13 @@ int gfs2_check_blk_type(struct gfs2_sbd *sdp, u64 no_addr, unsigned int type) ...@@ -2529,13 +2529,13 @@ int gfs2_check_blk_type(struct gfs2_sbd *sdp, u64 no_addr, unsigned int type)
rbm.rgd = rgd; rbm.rgd = rgd;
error = gfs2_rbm_from_block(&rbm, no_addr); error = gfs2_rbm_from_block(&rbm, no_addr);
if (WARN_ON_ONCE(error)) if (!WARN_ON_ONCE(error)) {
goto fail; if (gfs2_testbit(&rbm, false) != type)
error = -ESTALE;
if (gfs2_testbit(&rbm, false) != type) }
error = -ESTALE;
gfs2_glock_dq_uninit(&rgd_gh); gfs2_glock_dq_uninit(&rgd_gh);
fail: fail:
return error; return error;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment