On Aug 4, 2020, at 7:01 PM, brookxu wrote: > > Reorganize the if statement of ext4_mb_release_context(), make it > easier to read. > > Signed-off-by: Chunguang Xu Reviewed-by: Andreas Dilger > --- > fs/ext4/mballoc.c | 27 +++++++++++++-------------- > 1 file changed, 13 insertions(+), 14 deletions(-) > > diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c > index c0a331e..4f21f34 100644 > --- a/fs/ext4/mballoc.c > +++ b/fs/ext4/mballoc.c > @@ -4564,20 +4564,19 @@ static int ext4_mb_release_context(struct ext4_allocation_context *ac) > pa->pa_free -= ac->ac_b_ex.fe_len; > pa->pa_len -= ac->ac_b_ex.fe_len; > spin_unlock(&pa->pa_lock); > - } > - } > - if (pa) { > - /* > - * We want to add the pa to the right bucket. > - * Remove it from the list and while adding > - * make sure the list to which we are adding > - * doesn't grow big. > - */ > - if ((pa->pa_type == MB_GROUP_PA) && likely(pa->pa_free)) { > - spin_lock(pa->pa_obj_lock); > - list_del_rcu(&pa->pa_inode_list); > - spin_unlock(pa->pa_obj_lock); > - ext4_mb_add_n_trim(ac); > + > + /* > + * We want to add the pa to the right bucket. > + * Remove it from the list and while adding > + * make sure the list to which we are adding > + * doesn't grow big. > + */ > + if (likely(pa->pa_free)) { > + spin_lock(pa->pa_obj_lock); > + list_del_rcu(&pa->pa_inode_list); > + spin_unlock(pa->pa_obj_lock); > + ext4_mb_add_n_trim(ac); > + } > } > ext4_mb_put_pa(ac, ac->ac_sb, pa); > } > > -- > 1.8.3.1 > Cheers, Andreas