Bug 2536781 (CVE-2026-90420) - CVE-2026-90420 kernel: nilfs2: fix infinite loop in nilfs_clean_segments()
Summary: CVE-2026-90420 kernel: nilfs2: fix infinite loop in nilfs_clean_segments()
Keywords:
Status: NEW
Alias: CVE-2026-90420
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-17 19:33 UTC by OSIDB Bzimport
Modified: 2026-10-20 11:07 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-09-17 19:33:04 UTC
In the Linux kernel, the following vulnerability has been resolved:

nilfs2: fix infinite loop in nilfs_clean_segments()

syzbot reported a hung task in nilfs_transaction_begin(). This occurs
because the cleaner ioctl falls into an infinite loop if
nilfs_segctor_construct() repeatedly returns -EROFS (e.g. the device
is remounted as read-only after an I/O error).

Currently in nilfs_clean_segments(), if err is non-zero, it logs the
error and sleeps but doesn't abort when it encounters a terminal error
like -EROFS. This causes the thread to loop forever.

Fix this by breaking out of the loop if nilfs_segctor_construct()
returns -EROFS. This matches the behaviour in
nilfs_segctor_write_out(), which also handles -EROFS.


Note You need to log in before you can comment on or make changes to this bug.