gfs2: Use gfs2_holder_initialized for jindex
authorBob Peterson <rpeterso@redhat.com>
Mon, 10 Apr 2023 18:33:41 +0000 (14:33 -0400)
committerAndreas Gruenbacher <agruenba@redhat.com>
Tue, 18 Apr 2023 12:46:16 +0000 (14:46 +0200)
Before this patch function init_journal() used a local variable jindex to
keep track of whether it needed to dequeue the jindex holder when errors
were found. It also uselessly set the variable just before returning from
the function. This patch simplifies the code by eliminatinng the local
variable in favor of using function gfs2_holder_initialized.

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
fs/gfs2/ops_fstype.c

index 6de901c..9af9ddb 100644 (file)
@@ -734,13 +734,11 @@ static int init_journal(struct gfs2_sbd *sdp, int undo)
        struct inode *master = d_inode(sdp->sd_master_dir);
        struct gfs2_holder ji_gh;
        struct gfs2_inode *ip;
-       int jindex = 1;
        int error = 0;
 
-       if (undo) {
-               jindex = 0;
+       gfs2_holder_mark_uninitialized(&ji_gh);
+       if (undo)
                goto fail_statfs;
-       }
 
        sdp->sd_jindex = gfs2_lookup_simple(master, "jindex");
        if (IS_ERR(sdp->sd_jindex)) {
@@ -852,7 +850,6 @@ static int init_journal(struct gfs2_sbd *sdp, int undo)
        sdp->sd_log_idle = 1;
        set_bit(SDF_JOURNAL_CHECKED, &sdp->sd_flags);
        gfs2_glock_dq_uninit(&ji_gh);
-       jindex = 0;
        INIT_WORK(&sdp->sd_freeze_work, gfs2_freeze_func);
        return 0;
 
@@ -869,7 +866,7 @@ fail_journal_gh:
                gfs2_glock_dq_uninit(&sdp->sd_journal_gh);
 fail_jindex:
        gfs2_jindex_free(sdp);
-       if (jindex)
+       if (gfs2_holder_initialized(&ji_gh))
                gfs2_glock_dq_uninit(&ji_gh);
 fail:
        iput(sdp->sd_jindex);