Bug 2541218 (CVE-2026-98060) - CVE-2026-98060 kernel: bpf: Reject resilient lock operations in rbtree callbacks
Summary: CVE-2026-98060 kernel: bpf: Reject resilient lock operations in rbtree callbacks
Keywords:
Status: NEW
Alias: CVE-2026-98060
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-25 11:04 UTC by OSIDB Bzimport
Modified: 2026-09-29 00:07 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-09-25 11:04:36 UTC
In the Linux kernel, the following vulnerability has been resolved:

bpf: Reject resilient lock operations in rbtree callbacks

__bpf_rbtree_add() keeps parent and link pointers live across calls to the
program-supplied comparison callback. The verifier therefore requires the
root's lock to remain held throughout the callback.

The helper path enforces this rule for bpf_spin_lock() and
bpf_spin_unlock(), but the resilient lock kfunc argument path does not.
Since resilient locks may protect BPF rbtree roots, a callback can release
the root lock and let another CPU remove and free the node referenced by
the in-progress tree walk. The walk then resumes using freed pointers.

Reject resilient lock kfuncs in an rbtree comparison callback, matching
the existing policy for the spin lock helpers. Resilient-lock-protected
trees remain valid when their comparison callbacks leave lock state alone.


Note You need to log in before you can comment on or make changes to this bug.