Description
In the Linux kernel, the following vulnerability has been resolved: nilfs2: prevent use of deleted inode syzbot reported a WARNING in nilfs_rmdir. [1] Because the inode bitmap is corrupted, an inode with an inode number that should exist as a ".nilfs" file was reassigned by nilfs_mkdir for "file0", causing an inode duplication during execution. And this causes an underflow of i_nlink in rmdir operations. The inode is used twice by the same task to unmount and remove directories ".nilfs" and "file0", it trigger warning in nilfs_rmdir. Avoid to this issue, check i_nlink in nilfs_iget(), if it is 0, it means that this inode has been deleted, and iput is executed to reclaim it. [1] WARNING: CPU: 1 PID: 5824 at fs/inode.c:407 drop_nlink+0xc4/0x110 fs/inode.c:407 ... Call Trace: <TASK> nilfs_rmdir+0x1b0/0x250 fs/nilfs2/namei.c:342 vfs_rmdir+0x3a3/0x510 fs/namei.c:4394 do_rmdir+0x3b5/0x580 fs/namei.c:4453 __do_sys_rmdir fs/namei.c:4472 [inline] __se_sys_rmdir fs/namei.c:4470 [inline] __x64_sys_rmdir+0x47/0x50 fs/namei.c:4470 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
d25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < 55e4baa0d32f0530ddc64c26620e1f2f8fa2724caffectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < 5d4ed71327b0b5f3b179a19dc3c06be9509ab3dbaffectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < 912188316a8c9e41b8c1603c2276a05043b14f96affectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < ef942d233643777f7b2a5deef620e82942983143affectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < 284760b320a0bac411b18108316939707dccb12baffectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < ff561987ff12b6a3233431ff659b5d332e22f153affectedd25006523d0b9e49fd097b2e974e7c8c05bd7f54 to < 901ce9705fbb9f330ff1f19600e5daf9770b0175affected
Linux Linux
Default version status: affected
2.6.30affected0 to < 2.6.30unaffected5.4.289 to ≤ 5.4.*unaffected5.10.233 to ≤ 5.10.*unaffected5.15.176 to ≤ 5.15.*unaffected6.1.122 to ≤ 6.1.*unaffected6.6.68 to ≤ 6.6.*unaffected6.12.7 to ≤ 6.12.*unaffected6.13 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/55e4baa0d32f0530ddc64c26620e1f2f8fa2724c ↗
- https://git.kernel.org/stable/c/5d4ed71327b0b5f3b179a19dc3c06be9509ab3db ↗
- https://git.kernel.org/stable/c/912188316a8c9e41b8c1603c2276a05043b14f96 ↗
- https://git.kernel.org/stable/c/ef942d233643777f7b2a5deef620e82942983143 ↗
- https://git.kernel.org/stable/c/284760b320a0bac411b18108316939707dccb12b ↗
- https://git.kernel.org/stable/c/ff561987ff12b6a3233431ff659b5d332e22f153 ↗
- https://git.kernel.org/stable/c/901ce9705fbb9f330ff1f19600e5daf9770b0175 ↗
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html ↗
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html ↗