[PATCH v2 2/2] ext4: correct the judgment of BUG in ext4_mb_normalize_request

From: Baokun Li
Date: Mon May 23 2022 - 10:03:57 EST


When either of the "start + size <= ac->ac_o_ex.fe_logical" or
"start > ac->ac_o_ex.fe_logical" conditions is met, it indicates
that the fe_logical is not in the allocated range.
In this case, it should be bug_ON.

Fixes: c9de560ded61 ("ext4: Add multi block allocator for ext4")
Signed-off-by: Baokun Li <libaokun1@xxxxxxxxxx>
---
V1->V2:
Change Fixes from dfe076c106f6 to c9de560ded61.

fs/ext4/mballoc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
index 6aafc242fe23..61ced468f178 100644
--- a/fs/ext4/mballoc.c
+++ b/fs/ext4/mballoc.c
@@ -4185,7 +4185,7 @@ ext4_mb_normalize_request(struct ext4_allocation_context *ac,
}
rcu_read_unlock();

- if (start + size <= ac->ac_o_ex.fe_logical &&
+ if (start + size <= ac->ac_o_ex.fe_logical ||
start > ac->ac_o_ex.fe_logical) {
ext4_msg(ac->ac_sb, KERN_ERR,
"start %lu, size %lu, fe_logical %lu",
--
2.31.1