ext4: reject mount if bigalloc with s_first_data_block != 0

bigalloc with s_first_data_block != 0 is not supported, reject mounting
it.

Signed-off-by: Helen Koike <koike@igalia.com>
Suggested-by: Theodore Ts'o <tytso@mit.edu>
Reported-by: syzbot+b73703b873a33d8eb8f6@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=b73703b873a33d8eb8f6
Link: https://patch.msgid.link/20260317142325.135074-1-koike@igalia.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
This commit is contained in:
Helen Koike 2026-03-17 11:23:10 -03:00 committed by Theodore Ts'o
parent 9e1b14320b
commit 3822743dc2
1 changed files with 7 additions and 0 deletions

View File

@ -3633,6 +3633,13 @@ int ext4_feature_set_ok(struct super_block *sb, int readonly)
"extents feature\n");
return 0;
}
if (ext4_has_feature_bigalloc(sb) &&
le32_to_cpu(EXT4_SB(sb)->s_es->s_first_data_block)) {
ext4_msg(sb, KERN_WARNING,
"bad geometry: bigalloc file system with non-zero "
"first_data_block\n");
return 0;
}
#if !IS_ENABLED(CONFIG_QUOTA) || !IS_ENABLED(CONFIG_QFMT_V2)
if (!readonly && (ext4_has_feature_quota(sb) ||