mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH -next RFC] ext2: Add check if block is step over super block
@ 2021-11-01  9:33 Ye Bin
  0 siblings, 0 replies; only message in thread
From: Ye Bin @ 2021-11-01  9:33 UTC (permalink / raw)
  To: jack, linux-ext4; +Cc: linux-kernel, Ye Bin

We got an issue that super block is allocated by file system when run syzkaller
test. We add debug information find that origin image super block's block bitmap
is zero. There isn't check whether block is step over super block in ext2_new_blocks.

In order not to make things worse, we'd better to add check if block step over
super block when new blocks.

Signed-off-by: Ye Bin <yebin10@huawei.com>
---
 fs/ext2/balloc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
index c17ccc19b938..b93d52e6a17a 100644
--- a/fs/ext2/balloc.c
+++ b/fs/ext2/balloc.c
@@ -1376,7 +1376,8 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal,
 	    in_range(ret_block, le32_to_cpu(gdp->bg_inode_table),
 		      EXT2_SB(sb)->s_itb_per_group) ||
 	    in_range(ret_block + num - 1, le32_to_cpu(gdp->bg_inode_table),
-		      EXT2_SB(sb)->s_itb_per_group)) {
+		      EXT2_SB(sb)->s_itb_per_group) ||
+	    in_range(EXT2_SB(sb)->s_sb_block, ret_block, num)) {
 		ext2_error(sb, "ext2_new_blocks",
 			    "Allocating block in system zone - "
 			    "blocks from "E2FSBLK", length %lu",
-- 
2.31.1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-11-01  9:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-01  9:33 [PATCH -next RFC] ext2: Add check if block is step over super block Ye Bin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®