On 17.04.20 г. 17:40 ч., fdmanana@xxxxxxxxxx wrote: > From: Filipe Manana <fdmanana@xxxxxxxx> > > At clean_pinned_extents(), whether we end up returning success or failure, > we pretty much have to do the same things: > > 1) unlock unused_bg_unpin_mutex > 2) decrement reference count on the previous transaction > > We also call btrfs_dec_block_group_ro() in case of failure, but that is > better done in its caller, btrfs_delete_unused_bgs(), since its the > caller that calls inc_block_group_ro(), so it should be responsible for > the decrement operation, as it is in case any of the other functions it > calls fail. > > So move the call to btrfs_dec_block_group_ro() from clean_pinned_extents() > into btrfs_delete_unused_bgs() and unify the error and success return > paths for clean_pinned_extents(), reducing duplicated code and making it > simpler. > > Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx> Reviewed-by: Nikolay Borisov <nborisov@xxxxxxxx>
