CVE-2026-22991
kernel: libceph: make free_choose_arg_map() resilient to partial allocation
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · January 23, 2026
Updated · August 5, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
libceph: make free_choose_arg_map() resilient to partial allocation
free_choose_arg_map() may dereference a NULL pointer if its caller fails after a partial allocation.
For example, in decode_choose_args(), if allocation of arg_map->args fails, execution jumps to the fail label and free_choose_arg_map() is called. Since arg_map->size is updated to a non-zero value before memory allocation, free_choose_arg_map() will iterate over arg_map->args and dereference a NULL pointer.
To prevent this potential NULL pointer dereference and make free_choose_arg_map() more resilient, add checks for pointers before iterating.
Statement
A NULL pointer dereference could occur in free_choose_arg_map() when the caller fails after a partial allocation, leaving arg_map->args unset while arg_map->size is non-zero. This can crash the kernel in an error path (availability impact) when cleanup iterates and dereferences the missing args array.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-476 · NULL Pointer Dereference