CVE-2026-80558
In the Linux kernel, the following vulnerability has been resolved:
libceph: Avoid using invalid osd indices from primary_temp
A corrupted osdmap received from a Ceph monitor or OSD may contain osd
indices in its pgtemp, primarytemp, pgupmap, and pgupmap_items parts
that don't exist, i.e., that are greater than max_osd or smaller than
CEPHHOMELESSOSD (-1). These indices are used to create the up and
acting set in cephpgtoupactingosds(), called from calctarget().
While most of these osd indices are checked, the one from primary_temp
is not. Subsequently, this may lead to calc_target() returning this
(potentially invalid) index as target osd for a (linger) request.
Because the osdstate, osdweight, and osd_addr arrays only contain
maxosd entries (with indices 0 to maxosd -1), this leads to
out-of-bounds accesses when trying to read values from these arrays.
This patch fixes the issue by adding a check to gettemposds(), so that
only valid osd indices from primary_temp are used, and it falls back to
using the primary from pg_temp or the up set if it is invalid.
[ idryomov: changelog ]
Package Versions Affected
Automatically patch vulnerabilities without upgrading
CVSS Version



Related Resources
References
https://git.kernel.org/stable/c/1c705fe8e59c6b16f48964973fb23c8ec4735b73, https://git.kernel.org/stable/c/3660b98d1204b419f6a77e9a295f148dcf38d042, https://git.kernel.org/stable/c/4f392fec075562dc93bb0c69f37423ca2af9b48f, https://git.kernel.org/stable/c/505fc50b8ff8e687b7e3ef6866269dea27366224, https://git.kernel.org/stable/c/6799d4a916ffcb3d450d8440f9fe0f0862f768d6, https://git.kernel.org/stable/c/dfe1877d351b99eb1b1a62a3fc2d174220e88e20, https://git.kernel.org/stable/c/e009c5f0ad634c62f5c48a41f1f3c019ecf52555, https://git.kernel.org/stable/c/e2ffeec85201b2bb748e99e12539ee1b92f62796, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80558.json, https://nvd.nist.gov/vuln/detail/CVE-2026-80558, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git