CVE-2026-97443

perf/ftrace: Fix WARNING in __unregister_ftrace_function

State
Published
Severity
Not scored
Published
Sep 24, 2026
Updated
Sep 25, 2026
Reserved
Sep 24, 2026

Read the record on cve.org

Description

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.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7ef5aa081f989ecfecc1df02068a80aebbd3ec31 to before df097713b56ffac5eed32a9be2e7d27ac48d9087Affected
  • c70ca298036c58a88686ff388d3d367e9d21acf0 to before 7f845820afaad339341c2ae42bc7fdec175df9eaAffected
  • c70ca298036c58a88686ff388d3d367e9d21acf0 to before 9581123304b23049437324038698af9fb56ee663Affected
  • 315a50c6b1c6ce191f19f3372935d8e2ed9b53a6Affected
  • 1209b0b29fd472e7dbd2b06544b019dd9f9b7e51Affected
  • 6.12.24 to before 6.12.111Affected
  • 6.13.12 to before 6.14Affected
  • 6.14.3 to before 6.15Affected
LinuxLinux
  • 6.15Affected
  • before 6.15Not affected
  • 6.12.111 through 6.12.*Not affected
  • 6.18.53 through 6.18.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.