summaryrefslogtreecommitdiffstats
path: root/fs/ext4/mballoc.c
diff options
context:
space:
mode:
authorKemeng Shi <shikemeng@huaweicloud.com>2023-03-04 01:21:11 +0800
committerTheodore Ts'o <tytso@mit.edu>2023-04-06 01:13:11 -0400
commitaaae558dae6f804407a50e0eaf66c93b46b9a493 (patch)
tree6a9ecbf0b5197fcfb35b4ad63444aa531c887bac /fs/ext4/mballoc.c
parent285164b80175157c18a06425cf25591c9f942b1a (diff)
downloadlinux-stable-aaae558dae6f804407a50e0eaf66c93b46b9a493.tar.gz
linux-stable-aaae558dae6f804407a50e0eaf66c93b46b9a493.tar.bz2
linux-stable-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.c5
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) {