mirror of
https://github.com/torvalds/linux.git
synced 2024-11-22 20:22:09 +00:00
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: Zhang Qilong <zhangqilong3@huawei.com> Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
This commit is contained in:
parent
f8394f232b
commit
bc923818b1
@ -2529,13 +2529,13 @@ int gfs2_check_blk_type(struct gfs2_sbd *sdp, u64 no_addr, unsigned int type)
|
||||
|
||||
rbm.rgd = rgd;
|
||||
error = gfs2_rbm_from_block(&rbm, no_addr);
|
||||
if (WARN_ON_ONCE(error))
|
||||
goto fail;
|
||||
|
||||
if (gfs2_testbit(&rbm, false) != type)
|
||||
error = -ESTALE;
|
||||
if (!WARN_ON_ONCE(error)) {
|
||||
if (gfs2_testbit(&rbm, false) != type)
|
||||
error = -ESTALE;
|
||||
}
|
||||
|
||||
gfs2_glock_dq_uninit(&rgd_gh);
|
||||
|
||||
fail:
|
||||
return error;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user