On Mon, Aug 26, 2019 at 02:48:49PM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > The inode block mapping scrub function does more work for btree format > extent maps than is absolutely necessary -- first it will walk the bmbt > and check all the entries, and then it will load the incore tree and > check every entry in that tree, possibly for a second time. > > Simplify the code and decrease check runtime by separating the two > responsibilities. The bmbt walk will make sure the incore extent > mappings are loaded, check the shape of the bmap btree (via xchk_btree) > and check that every bmbt record has a corresponding incore extent map; > and the incore extent map walk takes all the responsibility for checking > the mapping records and cross referencing them with other AG metadata. > > This enables us to clean up some messy parameter handling and reduce > redundant code. Rename a few functions to make the split of > responsibilities clearer. > > Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> Looks fine. Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx