Commit e63a3690 authored by Nathan Scott's avatar Nathan Scott

[XFS] Fix a possible metadata buffer (AGFL) refcount leak when fixing an

AG freelist.

SGI-PV: 952681
SGI-Modid: xfs-linux-melb:xfs-kern:25902a
Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
parent b1ecdda9
...@@ -1942,8 +1942,10 @@ xfs_alloc_fix_freelist( ...@@ -1942,8 +1942,10 @@ xfs_alloc_fix_freelist(
/* /*
* Allocate as many blocks as possible at once. * Allocate as many blocks as possible at once.
*/ */
if ((error = xfs_alloc_ag_vextent(&targs))) if ((error = xfs_alloc_ag_vextent(&targs))) {
xfs_trans_brelse(tp, agflbp);
return error; return error;
}
/* /*
* Stop if we run out. Won't happen if callers are obeying * Stop if we run out. Won't happen if callers are obeying
* the restrictions correctly. Can happen for free calls * the restrictions correctly. Can happen for free calls
...@@ -1960,6 +1962,7 @@ xfs_alloc_fix_freelist( ...@@ -1960,6 +1962,7 @@ xfs_alloc_fix_freelist(
return error; return error;
} }
} }
xfs_trans_brelse(tp, agflbp);
args->agbp = agbp; args->agbp = agbp;
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment