Skip to content

Commit 191ce17

Browse files
committed
ext4: fix special inode number checks in __ext4_iget()
The check for special (reserved) inode number checks in __ext4_iget() was broken by commit 8a36397: ("ext4: avoid declaring fs inconsistent due to invalid file handles"). This was caused by a botched reversal of the sense of the flag now known as EXT4_IGET_SPECIAL (when it was previously named EXT4_IGET_NORMAL). Fix the logic appropriately. Fixes: 8a36397 ("ext4: avoid declaring fs inconsistent...") Signed-off-by: Theodore Ts'o <tytso@mit.edu> Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: stable@kernel.org
1 parent 95cb671 commit 191ce17

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

fs/ext4/inode.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4834,7 +4834,7 @@ struct inode *__ext4_iget(struct super_block *sb, unsigned long ino,
48344834
gid_t i_gid;
48354835
projid_t i_projid;
48364836

4837-
if (((flags & EXT4_IGET_NORMAL) &&
4837+
if ((!(flags & EXT4_IGET_SPECIAL) &&
48384838
(ino < EXT4_FIRST_INO(sb) && ino != EXT4_ROOT_INO)) ||
48394839
(ino < EXT4_ROOT_INO) ||
48404840
(ino > le32_to_cpu(EXT4_SB(sb)->s_es->s_inodes_count))) {

0 commit comments

Comments
 (0)