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

tracing: Take trace_array reference when opening a tracer options file

When a tracer option file is opened, it is passed a descriptor that points
to an element on the trace_array's topts array. This element has
information to find the trace array and other information. It uses this
element to take a reference of the trace_array so that the trace_array
does not get removed while this file is opened.

Unfortunately, there's a race condition where the element itself could be
freed by the removal of the instance the trace_array represents causing a
use-after-free as this element that is used to find the trace_array to
increment its reference counter is also freed when the instance is
removed.

To solve this, add a trace_array_tracer_options_get() helper function that
will take the address of the element that is passed to the open function
by the inode->i_private pointer and search all the trace_arrays under a
lock to find the one that the element's address is in the range of the
trace_arrays topts array elements. When a match happens, that trace_array's
reference would be increased.

Note, there's a race where if an admin was deleting and creating trace
instances at the same time and the memory of the old trace_array's array
matched the memory of the new trace_array that it could in theory open the
option from the wrong trace array. But we do not care because it would be
stupid to perform that kind of action. As long as the only thing that can
happen is that the option from the wrong trace array is used and doesn't
crash the kernel it will only make the user confused. But if they are
doing something stupid like this, they are already confused, so no harm
done.
Published: 2026-09-25
Score: 7.0 High
EPSS: < 1% Very Low
KEV: No
Impact: Use‑After‑Free in the Linux kernel trace subsystem
Action: Apply Patch
AI Analysis

Impact

A race condition exists while a tracer option file is opened in the Linux kernel. The kernel takes a reference to a trace_array element, but if that element is freed before the reference is taken, the kernel reads freed memory, leading to a use‑after‑free that can crash the kernel or corrupt internal state. This weakness is classified as exposure of uninitialized memory during race conditions (CWE‑825).

Affected Systems

All current Linux kernel releases prior to the patch adding trace_array_tracer_options_get() are affected. The flaw is present in the tracing subsystem across the kernel source tree, so any active kernel instance that has not been updated to the fixed version is vulnerable.

Risk and Exploitability

The CVSS score of 7.0 indicates moderate severity. The EPSS score of < 1% and the fact that the vulnerability is not listed in CISA KEV both suggest a low probability of widespread exploitation. The likely attack vector involves a process that can open tracer option files, which normally requires privileged or administrative rights. Based on the description, it is inferred that an attacker would need kernel‑level or root privileges to trigger the race and cause a kernel crash, resulting in denial of service for the affected system.

Generated by OpenCVE AI on October 1, 2026 at 08:39 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the kernel patch that implements trace_array_tracer_options_get() and corrects the reference handling logic.
  • Upgrade the system to a kernel version that includes the fix for the tracing subsystem if an official patch is not yet available.
  • Restrict write and execution access to tracer option files and limit creation or deletion of trace instances to trusted administrative accounts.

Generated by OpenCVE AI on October 1, 2026 at 08:39 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6568-1 linux security update
History

Thu, 15 Oct 2026 13:30:00 +0000


Sat, 03 Oct 2026 11:15:00 +0000


Thu, 01 Oct 2026 07:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 30 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.0, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

threat_severity

Moderate


Fri, 25 Sep 2026 14:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: tracing: Take trace_array reference when opening a tracer options file When a tracer option file is opened, it is passed a descriptor that points to an element on the trace_array's topts array. This element has information to find the trace array and other information. It uses this element to take a reference of the trace_array so that the trace_array does not get removed while this file is opened. Unfortunately, there's a race condition where the element itself could be freed by the removal of the instance the trace_array represents causing a use-after-free as this element that is used to find the trace_array to increment its reference counter is also freed when the instance is removed. To solve this, add a trace_array_tracer_options_get() helper function that will take the address of the element that is passed to the open function by the inode->i_private pointer and search all the trace_arrays under a lock to find the one that the element's address is in the range of the trace_arrays topts array elements. When a match happens, that trace_array's reference would be increased. Note, there's a race where if an admin was deleting and creating trace instances at the same time and the memory of the old trace_array's array matched the memory of the new trace_array that it could in theory open the option from the wrong trace array. But we do not care because it would be stupid to perform that kind of action. As long as the only thing that can happen is that the option from the wrong trace array is used and doesn't crash the kernel it will only make the user confused. But if they are doing something stupid like this, they are already confused, so no harm done.
Title tracing: Take trace_array reference when opening a tracer options file
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-15T10:11:55.655Z

Reserved: 2026-09-25T10:18:58.203Z

Link: CVE-2026-97933

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:20.610

Modified: 2026-10-15T11:18:09.330

Link: CVE-2026-97933

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-97933 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T08:45:03Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference