projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e5d3959
)
ext2: code cleanup for ext2_free_blocks()
author
Chengguang Xu
<cgxu519@zoho.com.cn>
Tue, 23 Jul 2019 11:21:55 +0000
(19:21 +0800)
committer
Jan Kara
<jack@suse.cz>
Wed, 31 Jul 2019 10:04:42 +0000
(12:04 +0200)
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>
fs/ext2/balloc.c
patch
|
blob
|
history
diff --git
a/fs/ext2/balloc.c
b/fs/ext2/balloc.c
index 92e9a74891746ef578fba06566c83c72d1bc24f1..e0cc551645059d1bd98a5b622563afae2381448e 100644
(file)
--- a/
fs/ext2/balloc.c
+++ b/
fs/ext2/balloc.c
@@
-490,9
+490,7
@@
void ext2_free_blocks (struct inode * inode, unsigned long block,
struct ext2_super_block * es = sbi->s_es;
unsigned freed = 0, group_freed;
- if (block < le32_to_cpu(es->s_first_data_block) ||
- block + count < block ||
- block + count > le32_to_cpu(es->s_blocks_count)) {
+ if (!ext2_data_block_valid(sbi, block, count)) {
ext2_error (sb, "ext2_free_blocks",
"Freeing blocks not in datazone - "
"block = %lu, count = %lu", block, count);