In the Linux kernel, the following vulnerability has been resolved: ext4: always drain queued...
🔗 CVE IDs covered (1)
📋 Description
In the Linux kernel, the following vulnerability has been resolved:
ext4: always drain queued discard work in ext4_mb_release()
While reviewing recent ext4 patch[1], Sashiko raised the following concern[2]:
If the filesystem is initially mounted with the discard option, deleting files will populate sbi->s_discard_list and queue s_discard_work. If it is then remounted with nodiscard, the EXT4_MOUNT_DISCARD flag is cleared, but the pending s_discard_work is neither cancelled nor flushed.
[1] https://lore.kernel.org/r/20260319094545.19291-1-qiang.zhang@linux.dev/ [2] https://sashiko.dev/#/patchset/20260319094545.19291-1-qiang.zhang%40linux.dev
The concern was valid, but it had nothing to do with the patch[1]. One of the problems with Sashiko in its current (early) form is that it will detect pre-existing issues and report it as a problem with the patch that it is reviewing.
In practice, it would be hard to hit deliberately (unless you are a malicious syzkaller fuzzer), since it would involve mounting the file system with -o discard, and then deleting a large number of files, remounting the file system with -o nodiscard, and then immediately unmounting the file system before the queued discard work has a change to drain on its own.
Fix it because it's a real bug, and to avoid Sashiko from raising this concern when analyzing future patches to mballoc.c.
🔗 References (9)
- https://nvd.nist.gov/vuln/detail/CVE-2026-43065
- https://git.kernel.org/stable/c/1c82f863f090ab899085bdfade073313384b514b
- https://git.kernel.org/stable/c/812b6a7cd3e7f3a3e8a24db85bc6313c26cb1098
- https://git.kernel.org/stable/c/9b4d9dda6a71ad3425c8109d27c4c6bfb9da97b8
- https://git.kernel.org/stable/c/9ee29d20aab228adfb02ca93f87fb53c56c2f3af
- https://git.kernel.org/stable/c/b4737e26d4688b8aea88ad6ea4dbfeb6e78b0327
- https://git.kernel.org/stable/c/c360e9d0def4f4ae03254a67c683103908555b75
- https://git.kernel.org/stable/c/e96c2354b170aaa53300c8e8fd59e41b133160f7
- https://github.com/advisories/GHSA-86wv-8x6p-4rhg