xfs: fix error bailout in xrep_abt_build_new_trees
authorDarrick J. Wong <djwong@kernel.org>
Mon, 15 Apr 2024 21:54:06 +0000 (14:54 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Mon, 15 Apr 2024 21:54:06 +0000 (14:54 -0700)
Dan Carpenter reports:

"Commit 4bdfd7d15747 ("xfs: repair free space btrees") from Dec 15,
2023 (linux-next), leads to the following Smatch static checker
warning:

        fs/xfs/scrub/alloc_repair.c:781 xrep_abt_build_new_trees()
        warn: missing unwind goto?"

That's a bug, so let's fix it.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Fixes: 4bdfd7d15747 ("xfs: repair free space btrees")
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/scrub/alloc_repair.c

index d421b253923edc25981e92d5835a705cddf309a0..30295898cc8a638b68aebd7bb525a582f2218d9f 100644 (file)
@@ -778,7 +778,7 @@ xrep_abt_build_new_trees(
 
        error = xrep_bnobt_sort_records(ra);
        if (error)
-               return error;
+               goto err_levels;
 
        /* Load the free space by block number tree. */
        ra->array_cur = XFARRAY_CURSOR_INIT;