Description
In the Linux kernel, the following vulnerability has been resolved: nilfs2: propagate directory read errors from nilfs_find_entry() Syzbot reported that a task hang occurs in vcs_open() during a fuzzing test for nilfs2. The root cause of this problem is that in nilfs_find_entry(), which searches for directory entries, ignores errors when loading a directory page/folio via nilfs_get_folio() fails. If the filesystem images is corrupted, and the i_size of the directory inode is large, and the directory page/folio is successfully read but fails the sanity check, for example when it is zero-filled, nilfs_check_folio() may continue to spit out error messages in bursts. Fix this issue by propagating the error to the callers when loading a page/folio fails in nilfs_find_entry(). The current interface of nilfs_find_entry() and its callers is outdated and cannot propagate error codes such as -EIO and -ENOMEM returned via nilfs_find_entry(), so fix it together.
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
2ba466d74ed74f073257f86e61519cb8f8f46184 to < bb857ae1efd3138c653239ed1e7aef14e1242c81affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < b4b3dc9e7e604be98a222e9f941f5e93798ca475affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < c1d0476885d708a932980b0f28cd90d9bd71db39affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < edf8146057264191d5bfe5b91773f13d936dadd3affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < 270a6f9df35fa2aea01ec23770dc9b3fc9a12989affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < 9698088ac7704e260f492d9c254e29ed7dd8729aaffected2ba466d74ed74f073257f86e61519cb8f8f46184 to < efa810b15a25531cbc2f527330947b9fe16916e7affected2ba466d74ed74f073257f86e61519cb8f8f46184 to < 08cfa12adf888db98879dbd735bc741360a34168affected
Linux Linux
Default version status: affected
2.6.30affected0 to < 2.6.30unaffected4.19.323 to ≤ 4.19.*unaffected5.4.285 to ≤ 5.4.*unaffected5.10.228 to ≤ 5.10.*unaffected5.15.169 to ≤ 5.15.*unaffected6.1.114 to ≤ 6.1.*unaffected6.6.58 to ≤ 6.6.*unaffected6.11.5 to ≤ 6.11.*unaffected6.12 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/bb857ae1efd3138c653239ed1e7aef14e1242c81 ↗
- https://git.kernel.org/stable/c/b4b3dc9e7e604be98a222e9f941f5e93798ca475 ↗
- https://git.kernel.org/stable/c/c1d0476885d708a932980b0f28cd90d9bd71db39 ↗
- https://git.kernel.org/stable/c/edf8146057264191d5bfe5b91773f13d936dadd3 ↗
- https://git.kernel.org/stable/c/270a6f9df35fa2aea01ec23770dc9b3fc9a12989 ↗
- https://git.kernel.org/stable/c/9698088ac7704e260f492d9c254e29ed7dd8729a ↗
- https://git.kernel.org/stable/c/efa810b15a25531cbc2f527330947b9fe16916e7 ↗
- https://git.kernel.org/stable/c/08cfa12adf888db98879dbd735bc741360a34168 ↗
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html ↗
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html ↗