From dac0fc31bea78e3ac1467d2fdb49ffff37e95e84 Mon Sep 17 00:00:00 2001 From: Bob Peterson Date: Mon, 15 May 2023 11:37:57 -0500 Subject: gfs2: Fix gfs2_qa_get imbalance in gfs2_quota_hold This patch fixes a case in which function gfs2_quota_hold encounters an assert error and exits. The lack of gfs2_qa_put causes further problems when the inode is evicted and the get/put count is non-zero. Signed-off-by: Bob Peterson Signed-off-by: Andreas Gruenbacher --- fs/gfs2/quota.c | 1 + 1 file changed, 1 insertion(+) (limited to 'fs/gfs2') diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c index 1ed17226d9ed..386ca770ce2e 100644 --- a/fs/gfs2/quota.c +++ b/fs/gfs2/quota.c @@ -591,6 +591,7 @@ int gfs2_quota_hold(struct gfs2_inode *ip, kuid_t uid, kgid_t gid) if (gfs2_assert_warn(sdp, !ip->i_qadata->qa_qd_num) || gfs2_assert_warn(sdp, !test_bit(GIF_QD_LOCKED, &ip->i_flags))) { error = -EIO; + gfs2_qa_put(ip); goto out; } -- cgit v1.2.3-58-ga151