]> git-server-git.apps.pok.os.sepia.ceph.com Git - xfsprogs-dev.git/commitdiff
libfrog: allow bitmap_free to handle a null bitmap pointer
authorDarrick J. Wong <djwong@kernel.org>
Tue, 17 Mar 2026 17:15:16 +0000 (10:15 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Thu, 9 Apr 2026 22:30:18 +0000 (15:30 -0700)
Allow bitmap_free() callers to pass a pointer to a NULL pointer.
This will help subsequent refactorings in xfs_scrub have cleaner
bitmap_free callsites.

Signed-off-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
libfrog/bitmap.c
repair/rmap.c
scrub/phase5.c

index 0308886d446ff2b554319fb734c73725b1195e85..6a3d852c25a46c1b527d1b58b9e57ac3fc8047b1 100644 (file)
@@ -109,6 +109,9 @@ bitmap_free(
        struct bitmap_node      *ext;
 
        bmap = *bmapp;
+       if (!bmap)
+               return;
+
        avl_for_each_safe(bmap->bt_tree, node, n) {
                ext = container_of(node, struct bitmap_node, btn_node);
                free(ext);
index e89bd32d63a953707be55005190c623300ad07bf..55c2b0928c52b0ed9bbc65593750997a1e25b89f 100644 (file)
@@ -752,8 +752,7 @@ err_slab:
 err:
        if (agflbp)
                libxfs_buf_relse(agflbp);
-       if (own_ag_bitmap)
-               bitmap_free(&own_ag_bitmap);
+       bitmap_free(&own_ag_bitmap);
        return error;
 }
 
index 577dda8064c3a8931e36ef94b2aee4e2f36cc368..52bbbca4b9f06a5d91e0468fd68cab15d9d9f318 100644 (file)
@@ -897,10 +897,8 @@ _("Filesystem has errors, skipping connectivity checks."));
        scrub_report_preen_triggers(ctx);
 out_lock:
        pthread_mutex_destroy(&ncs.lock);
-       if (ncs.new_deferred)
-               bitmap_free(&ncs.new_deferred);
-       if (ncs.cur_deferred)
-               bitmap_free(&ncs.cur_deferred);
+       bitmap_free(&ncs.new_deferred);
+       bitmap_free(&ncs.cur_deferred);
        return ret;
 }