In the Linux kernel, the following vulnerability has been resolved:
bpf: Enforce regsafe base id consistency for BPFADDCONST scalars
When regsafe() compares two scalar registers that both carry BPFADDCONST, checkscalarids() maps their full compound id (aka base | BPFADDCONST flag) as one idmap entry. However, it never verifies that the underlying base ids, that is, with the flag stripped are consistent with existing idmap mappings.
This allows construction of two verifier states where the old state has R3 = R2 + 10 (both sharing base id A) while the current state has R3 = R4 + 10 (base id C, unrelated to R2). The idmap creates two independent entries: A->B (for R2) and A|flag->C|flag (for R3), without catching that A->C conflicts with A->B. State pruning then incorrectly succeeds.
Fix this by additionally verifying base ID mapping consistency whenever BPFADDCONST is set: after mapping the compound ids, also invoke checkids() on the base IDs (flag bits stripped). This ensures that if A was already mapped to B from comparing the source register, any ADDCONST derivative must also derive from B, not an unrelated C.
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53081.json"
}