CVE-2026-46272CWE-362

CVE-2026-46272

Medium · published June 3, 2026

CVSS v3.1
4.7
EPSS
0%
Percentile
1.8
In the wild
Unconfirmed
What it is

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

coresight: tmc-etr: Fix race condition between sysfs and perf mode

When trying to run perf and sysfs mode simultaneously, the WARN_ON()

in tmc_etr_enable_hw() is triggered sometimes:

WARNING: CPU: 42 PID: 3911571 at drivers/hwtracing/coresight/coresight-tmc-etr.c:1060 tmc_etr_enable_hw+0xc0/0xd8 [coresight_tmc]

[..snip..]

Call trace:

tmc_etr_enable_hw+0xc0/0xd8 [coresight_tmc] (P)

tmc_enable_etr_sink+0x11c/0x250 [coresight_tmc] (L)

tmc_enable_etr_sink+0x11c/0x250 [coresight_tmc]

coresight_enable_path+0x1c8/0x218 [coresight]

coresight_enable_sysfs+0xa4/0x228 [coresight]

enable_source_store+0x58/0xa8 [coresight]

dev_attr_store+0x20/0x40

sysfs_kf_write+0x4c/0x68

kernfs_fop_write_iter+0x120/0x1b8

vfs_write+0x2c8/0x388

ksys_write+0x74/0x108

__arm64_sys_write+0x24/0x38

el0_svc_common.constprop.0+0x64/0x148

do_el0_svc+0x24/0x38

el0_svc+0x3c/0x130

el0t_64_sync_handler+0xc8/0xd0

el0t_64_sync+0x1ac/0x1b0

---[ end trace 0000000000000000 ]---

Since the enablement of sysfs mode is separeted into two critical regions,

one for sysfs buffer allocation and another for hardware enablement, it's

possible to race with the perf mode. Fix this by double check whether

the perf mode's been used before enabling the hardware in sysfs mode.

mode:

[sysfs mode] [perf mode]

tmc_etr_get_sysfs_buffer()

spin_lock(&drvdata->spinlock)

[sysfs buffer allocation]

spin_unlock(&drvdata->spinlock)

spin_lock(&drvdata->spinlock)

tmc_etr_enable_hw()

drvdata->etr_buf = etr_perf->etr_buf

spin_unlock(&drvdata->spinlock)

spin_lock(&drvdata->spinlock)

tmc_etr_enable_hw()

WARN_ON(drvdata->etr_buf) // WARN sicne etr_buf initialized at

the perf side

spin_unlock(&drvdata->spinlock)

With this fix, we retain the check for CS_MODE_PERF in get_etr_sysfs_buf.

This ensures we verify whether the perf mode's already running before we

actually allocate the buffer. Then we can save the time of

allocating/freeing the sysfs buffer if race with the perf mode.

The record
Technical detail
CVSS v3.1
4.7 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00121 · 1.8th percentile
Weakness
CWE-362 · Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Published
2026-06-03T22:16Z
Affected products (2)
ProductVersionsFixed in
linux/linux_kernel≥ 6.5, < 6.18.146.18.14
linux/linux_kernel≥ 6.19, < 6.19.46.19.4
References (5)
EPSS history
Timeline
  • 03 JUN 15:50Z
    coresight: tmc-etr: Fix race condition between sysfs and perf mode
    cvelistv5