CVE-2026-46196: tracepoint: balance regfunc() on func_add() failure in tracepoint_add_func()
In the Linux kernel, the following vulnerability has been resolved:
tracepoint: balance regfunc() on funcadd() failure in tracepointaddfunc()
When a tracepoint goes through the 0 -> 1 transition, tracepointaddfunc() invokes the subsystem's ext->regfunc() before attempting to install the new probe via funcadd(). If funcadd() then fails (for example, when allocateprobes() cannot allocate a new probe array under memory pressure and returns -ENOMEM), the function returns the error without calling the matching ext->unregfunc(), leaving the side effects of regfunc() behind with no installed probe to justify them.
For syscall tracepoints this is particularly unpleasant: syscallregfunc() bumps systracepointrefcount and sets SYSCALLTRACEPOINT on every task. After a leaked failure, the refcount is stuck at a non-zero value with no consumer, and every task continues paying the syscall trace entry/exit overhead until reboot. Other subsystems providing regfunc()/unregfunc() pairs exhibit similarly scoped persistent state.
Mirror the existing 1 -> 0 cleanup and call ext->unregfunc() in the funcadd() error path, gated on the same condition used there so the unwind is symmetric with the registration.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.6.141.1-1
Event History
Frequently Asked Questions
What is the severity of CVE-2026-46196?
CVE-2026-46196 is assigned a risk score of 23, indicating a significant security concern.
How do I fix CVE-2026-46196?
To mitigate CVE-2026-46196, update your Linux kernel to a version that includes the security patch addressing this vulnerability.
What systems are affected by CVE-2026-46196?
CVE-2026-46196 affects the Linux kernel and its related Tracepoint functionality.
What kind of vulnerability is CVE-2026-46196?
CVE-2026-46196 is related to improper handling during the registration of functions in the tracepoint system of the Linux kernel.
When was CVE-2026-46196 published?
CVE-2026-46196 was published on May 28, 2026.