CVE-2026-64556

Summary

In the Linux kernel, the following vulnerability has been resolved:

perf/core: Detach event groups during remove_on_exec

perf_event_remove_on_exec() removes events by calling perf_event_exit_event(). For top-level events, this removes the event from the context with DETACH_EXIT only.

This can leave inconsistent group state when a removed event is a group leader and the group contains siblings without remove_on_exec. If the group was active, the surviving siblings can remain active and attached to the removed leader's sibling list, but are no longer represented by a valid group leader on the PMU context active lists.

A later close of the removed leader uses DETACH_GROUP and can promote the still-active siblings from this stale group state. The next schedule-in can then add an already-linked active_list entry again, corrupting the PMU context active list.

With DEBUG_LIST enabled, this is caught as a list_add double-add in merge_sched_in().

Fix this by detaching group relationships when remove_on_exec removes an event. This preserves the existing task-exit and revoke behavior, while ensuring surviving siblings are ungrouped before the removed event leaves the context.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux2e498d0a74e5b88a6689ae1b811f247f91ff188e < 4cdb1b3ab96eb1b7eb70bc5c82fede334bd60df2affected
LinuxLinux2e498d0a74e5b88a6689ae1b811f247f91ff188e < 39358e856fb89e62e3c8d7389a2dc4ec33dbe90eaffected
LinuxLinux2e498d0a74e5b88a6689ae1b811f247f91ff188e < a2d5d3ee7b6e3953114726b1521e62123ab5b043affected
LinuxLinux2e498d0a74e5b88a6689ae1b811f247f91ff188e < 06ccef0434e98058ddae7bcebc901f93d22b7653affected
LinuxLinux2e498d0a74e5b88a6689ae1b811f247f91ff188e < 037a3c43edfb597665dd34457cd22b14692f2ba3affected
LinuxLinux5.13affected
LinuxLinux0 < 5.13unaffected
LinuxLinux6.6.145 <= 6.6.*unaffected
LinuxLinux6.12.96 <= 6.12.*unaffected
LinuxLinux6.18.39 <= 6.18.*unaffected
LinuxLinux7.1.4 <= 7.1.*unaffected
LinuxLinux7.2-rc2 <= *unaffected

Weaknesses

References