Re: [syzbot] kernel BUG in ext4_es_cache_extent

Phi Nguyen
2022-04-20T13:57:39Z

On 4/20/2022 8:16 PM, Jan Kara wrote:
> On Mon 14-02-22 02:03:37, Phi Nguyen wrote:
>> The non-journal mounted fs is corrupted, syzbot was able to mount it because
>> a [fast commit] patch exclude its inodes from verification process.
>>
>> #syz test: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>> master
>
> This patch seems to have fallen through the cracks. Phi, care to submit it
> properly with your Signed-off-by etc?
>
> Honza
>
>> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
>> index 01c9e4f743ba..385f4ae71573 100644
>> --- a/fs/ext4/inode.c
>> +++ b/fs/ext4/inode.c
>> @@ -4912,7 +4912,7 @@ struct inode *__ext4_iget(struct super_block *sb, unsigned long ino,
>> goto bad_inode;
>> } else if (!ext4_has_inline_data(inode)) {
>> /* validate the block references in the inode */
>> - if (!(EXT4_SB(sb)->s_mount_state & EXT4_FC_REPLAY) &&
>> + if (!(journal && EXT4_SB(sb)->s_mount_state & EXT4_FC_REPLAY) &&
>> (S_ISREG(inode->i_mode) || S_ISDIR(inode->i_mode) ||
>> (S_ISLNK(inode->i_mode) &&
>> !ext4_inode_is_fast_symlink(inode)))) {
>

Okay, I will send a patch.

BR,
Phi