diff options
author | Kemeng Shi <shikemeng@huaweicloud.com> | 2023-03-04 01:21:11 +0800 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2023-04-06 01:13:11 -0400 |
commit | aaae558dae6f804407a50e0eaf66c93b46b9a493 (patch) | |
tree | 6a9ecbf0b5197fcfb35b4ad63444aa531c887bac /fs/ext4/mballoc.c | |
parent | 285164b80175157c18a06425cf25591c9f942b1a (diff) | |
download | linux-aaae558dae6f804407a50e0eaf66c93b46b9a493.tar.gz linux-aaae558dae6f804407a50e0eaf66c93b46b9a493.tar.bz2 linux-aaae558dae6f804407a50e0eaf66c93b46b9a493.zip |
ext4: remove unnecessary check in ext4_mb_new_blocks
1. remove unnecessary ac check:
We always go to out tag before ac is successfully allocated, then we can
move out tag after free of ac and remove NULL check of ac.
2. remove unnecessary *errp check:
We always go to errout tag if *errp is non-zero, then we can move errout
tag into error handle if *errp is non-zero.
Signed-off-by: Kemeng Shi <shikemeng@huaweicloud.com>
Reviewed-by: Ojaswin Mujoo <ojaswin@linux.ibm.com>
Link: https://lore.kernel.org/r/20230303172120.3800725-12-shikemeng@huaweicloud.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/mballoc.c')
-rw-r--r-- | fs/ext4/mballoc.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index 8d3d59876a4a..65dac09c4cea 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c @@ -5642,16 +5642,15 @@ repeat: *errp = -ENOSPC; } -errout: if (*errp) { +errout: ac->ac_b_ex.fe_len = 0; ar->len = 0; ext4_mb_show_ac(ac); } ext4_mb_release_context(ac); + kmem_cache_free(ext4_ac_cachep, ac); out: - if (ac) - kmem_cache_free(ext4_ac_cachep, ac); if (inquota && ar->len < inquota) dquot_free_block(ar->inode, EXT4_C2B(sbi, inquota - ar->len)); if (!ar->len) { |