CVEvulnerability
CVE-2026-98831
- Status
- Received
- Published
- 2026-10-18
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
of/overlay: don't leak fragment references when changeset init fails
init_overlay_changeset() stores the number of initialized fragments
in ovcs->count only on full success. When find_target() or the
__symbols__ lookup fails partway through, the target and overlay
references taken for the fragments initialized so far are never
dropped: free_overlay_changeset() bounds its cleanup loop by
ovcs->count, which is still 0.
Store the running count on the error path so free_overlay_changeset()
puts whatever was set up. The store is guarded by ovcs->fragments
because on the allocation-failure path cnt still holds the counting
pass total while there is no fragments array; everywhere else cnt
only counts fully-initialized fragments.
References
- https://git.kernel.org/stable/c/1d62f0f2bc7edb12ed09f71203df0e47fa4efca4 git.kernel.org
- https://git.kernel.org/stable/c/3a23fb158ba517b77a2e5258263bdfdaa480f758 git.kernel.org
- https://git.kernel.org/stable/c/702b5db6e7b3865be70675d57d6fd7dde80d02b6 git.kernel.org
- https://git.kernel.org/stable/c/7a46f1917b320cc8762183b802301da02a191b6a git.kernel.org
- https://git.kernel.org/stable/c/894573e2fdaeb1b15030b7eebc22615edf28a6cd git.kernel.org