CVE-2026-97443
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
perf/ftrace: Fix WARNING in __unregister_ftrace_function
perf_ftrace_function_unregister() unconditionally calls unregister_ftrace_function() without checking whether the ftrace_ops was ever successfully registered. This triggers a WARN_ON in __unregister_ftrace_function() when the ops doesn't have FTRACE_OPS_FL_ENABLED set.
This can happen during perf_event_alloc() error cleanup when perf_trace_destroy() is called via __free_event() on an event whose ftrace_ops registration failed or was already torn down by perf_try_init_event()'s err_destroy path.
The call path is: perf_event_alloc() error cleanup -> __free_event() -> event->destroy() [tp_perf_event_destroy] -> perf_trace_destroy() -> perf_trace_event_close() -> TRACE_REG_PERF_CLOSE -> perf_ftrace_function_unregister() -> unregister_ftrace_function() -> __unregister_ftrace_function() -> WARN_ON(!(ops->flags & FTRACE_OPS_FL_ENABLED))
Fix this by checking FTRACE_OPS_FL_ENABLED before attempting to unregister. If the ops is not enabled, just free the filter and return success.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 7ef5aa081f989ecfecc1df02068a80aebbd3ec31 < df097713b56ffac5eed32a9be2e7d27ac48d9087 | affected |
| Linux | Linux | c70ca298036c58a88686ff388d3d367e9d21acf0 < 7f845820afaad339341c2ae42bc7fdec175df9ea | affected |
| Linux | Linux | c70ca298036c58a88686ff388d3d367e9d21acf0 < 9581123304b23049437324038698af9fb56ee663 | affected |
| Linux | Linux | 315a50c6b1c6ce191f19f3372935d8e2ed9b53a6 | affected |
| Linux | Linux | 1209b0b29fd472e7dbd2b06544b019dd9f9b7e51 | affected |
| Linux | Linux | 6.12.24 < 6.12.111 | affected |
| Linux | Linux | 6.13.12 < 6.14 | affected |
| Linux | Linux | 6.14.3 < 6.15 | affected |
| Linux | Linux | 6.15 | affected |
| Linux | Linux | 0 < 6.15 | unaffected |
| Linux | Linux | 6.12.111 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.53 <= 6.18.* | unaffected |
| Linux | Linux | 7.2 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/df097713b56ffac5eed32a9be2e7d27ac48d9087
- https://git.kernel.org/stable/c/7f845820afaad339341c2ae42bc7fdec175df9ea
- https://git.kernel.org/stable/c/9581123304b23049437324038698af9fb56ee663
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.