PT-2026-98701 · Linux · Linux

CVE-2026-98038

·

Published

2026-09-25

·

Updated

2026-09-25

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
bpf: Keep refcount acquire nullable for borrowed RCU kptrs
bpf refcount acquire() is fallible for a borrowed reference because the object may have reached a zero refcount. The verifier therefore keeps KF RET NULL on the return value unless the argument is an owning reference.
An RCU-protected load of a local kptr is marked MEM ALLOC, but it only receives NON OWN REF when the pointee contains a graph node. A refcounted object without a graph node consequently looks like an owning reference even though the loaded register has no acquired reference state. If the program drops the last real reference while remaining in the RCU critical section, refcount inc not zero() returns NULL while the verifier treats the result as non-NULL.
Only classify the argument as owning when it is backed by a verifier-tracked reference. This retains the non-NULL return for pointers from bpf obj new(), bpf kptr xchg(), or an earlier successful acquisition, while requiring a NULL check for borrowed RCU kptrs.
[ kkd: Rewrote commit log ]
Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

CVE-2026-98038

Affected Products

Linux