summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChengguang Xu <cgxu519@zoho.com.cn>2019-07-23 07:21:55 -0400
committerJan Kara <jack@suse.cz>2019-07-31 06:04:42 -0400
commitb6aeffc5852f39db6e6e56da5327d0c43ac3c30a (patch)
tree7c2fa853f803c8d27734c118e004106d582a9424
parente5d395974e043cdcedcd84a0d41aaebb723786d8 (diff)
ext2: code cleanup for ext2_free_blocks()
Call ext2_data_block_valid() for block range validity. Signed-off-by: Chengguang Xu <cgxu519@zoho.com.cn> Link: https://lore.kernel.org/r/20190723112155.20329-2-cgxu519@zoho.com.cn Signed-off-by: Jan Kara <jack@suse.cz>
-rw-r--r--fs/ext2/balloc.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
index 92e9a7489174..e0cc55164505 100644
--- a/fs/ext2/balloc.c
+++ b/fs/ext2/balloc.c
@@ -490,9 +490,7 @@ void ext2_free_blocks (struct inode * inode, unsigned long block,
490 struct ext2_super_block * es = sbi->s_es; 490 struct ext2_super_block * es = sbi->s_es;
491 unsigned freed = 0, group_freed; 491 unsigned freed = 0, group_freed;
492 492
493 if (block < le32_to_cpu(es->s_first_data_block) || 493 if (!ext2_data_block_valid(sbi, block, count)) {
494 block + count < block ||
495 block + count > le32_to_cpu(es->s_blocks_count)) {
496 ext2_error (sb, "ext2_free_blocks", 494 ext2_error (sb, "ext2_free_blocks",
497 "Freeing blocks not in datazone - " 495 "Freeing blocks not in datazone - "
498 "block = %lu, count = %lu", block, count); 496 "block = %lu, count = %lu", block, count);