On Thu, Nov 30, 2017 at 01:58:36PM -0500, Brian Foster wrote: > The create transaction reservation calculation has two different > branches of code depending on whether the filesystem is a v5 format > fs or older. Each branch considers the max reservation between the > allocation case (new chunk allocation + record insert) and the > modify case (chunk exists, record modification) of inode allocation. > > The modify case is the same for both superblock versions with the > exception of the finobt. The finobt helper checks the feature bit, > however, and so the modify case already shares the same code. > > Now that inode chunk allocation has been refactored into a helper > that checks the superblock version to calculate the appropriate > reservation for the create transaction, the only remaining > difference between the create and icreate branches is the call to > the finobt helper. As noted above, the finobt helper is a no-op when > the feature is not enabled. Therefore, these branches are > effectively duplicate and can be condensed. > > Remove the xfs_calc_create_*() branch of functions and update the > various callers to use the xfs_calc_icreate_*() variant. The latter > creates the same reservation size for v4 create transactions as the > removed branch. As such, this patch does not result in transaction > reservation changes. > > Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx> Nice simplification. Looks good. Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html