diff options
author | Andreas Gruenbacher <agruenba@redhat.com> | 2024-06-05 22:13:15 +0200 |
---|---|---|
committer | Andreas Gruenbacher <agruenba@redhat.com> | 2024-06-08 02:35:09 +0200 |
commit | ec4b5200c8af9ce021399d3192b3379c089396c3 (patch) | |
tree | d9214948d4688ac8f2f266ae4b808b85e37b6a30 /fs/gfs2/util.c | |
parent | 4b4b6374dc6134849f2bdca81fa2945b6ed6d9fc (diff) | |
download | lwn-ec4b5200c8af9ce021399d3192b3379c089396c3.tar.gz lwn-ec4b5200c8af9ce021399d3192b3379c089396c3.zip |
gfs2: Revert "Add quota_change type"
Commit 432928c93779 ("gfs2: Add quota_change type") makes the incorrect
assertion that function do_qc() should behave differently in the two
contexts it is used in, but that isn't actually true. In all cases,
do_qc() grabs a "reference" when it starts using a slot in the per-node
quota changes file, and it releases that "reference" when no more
residual changes remain. Revert that broken commit.
There are some remaining issues with function do_qc() which are
addressed in the next commit.
This reverts commit 432928c9377959684c748a9bc6553ed2d3c2ea4f.
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'fs/gfs2/util.c')
-rw-r--r-- | fs/gfs2/util.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/gfs2/util.c b/fs/gfs2/util.c index 7e79b1a9e35f..13be8d1d228b 100644 --- a/fs/gfs2/util.c +++ b/fs/gfs2/util.c @@ -99,12 +99,12 @@ out_unlock: */ int gfs2_freeze_lock_shared(struct gfs2_sbd *sdp) { + int flags = LM_FLAG_NOEXP | GL_EXACT; int error; - error = gfs2_glock_nq_init(sdp->sd_freeze_gl, LM_ST_SHARED, - LM_FLAG_NOEXP | GL_EXACT, + error = gfs2_glock_nq_init(sdp->sd_freeze_gl, LM_ST_SHARED, flags, &sdp->sd_freeze_gh); - if (error) + if (error && error != GLR_TRYFAILED) fs_err(sdp, "can't lock the freeze glock: %d\n", error); return error; } |