diff options
author | Bob Peterson <rpeterso@redhat.com> | 2019-06-06 07:33:38 -0500 |
---|---|---|
committer | Andreas Gruenbacher <agruenba@redhat.com> | 2019-06-06 16:29:26 +0200 |
commit | 638803d4568121d73a266e440530f880ffa2dacc (patch) | |
tree | 79e35d2f48a94513f50de1995c4a3cb88dc7769d /fs/gfs2/log.c | |
parent | f2c7c76c5d0a443053e94adb9f0918fa2fb85c3a (diff) |
Revert "gfs2: Replace gl_revokes with a GLF flag"
Commit 73118ca8baf7 introduced a glock reference counting bug in
gfs2_trans_remove_revoke. Given that, replacing gl_revokes with a GLF flag is
no longer useful, so revert that commit.
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'fs/gfs2/log.c')
-rw-r--r-- | fs/gfs2/log.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c index a2e1df488df0..86703c95353e 100644 --- a/fs/gfs2/log.c +++ b/fs/gfs2/log.c @@ -606,10 +606,8 @@ void gfs2_add_revoke(struct gfs2_sbd *sdp, struct gfs2_bufdata *bd) gfs2_remove_from_ail(bd); /* drops ref on bh */ bd->bd_bh = NULL; sdp->sd_log_num_revoke++; - if (!test_bit(GLF_REVOKES, &gl->gl_flags)) { - set_bit(GLF_REVOKES, &gl->gl_flags); + if (atomic_inc_return(&gl->gl_revokes) == 1) gfs2_glock_hold(gl); - } set_bit(GLF_LFLUSH, &gl->gl_flags); list_add(&bd->bd_list, &sdp->sd_log_revokes); } |