Skip to content
Fencer Vulns
high 7.8

CVE-2025-21889 json

perf/core: Add RCU read lock protection to perf_iterate_ctx()

published 2025-03-27 19 mo ago modified 2026-10-15 24 d ago also EUVD-2025-8473

cvss
7.8
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.2%
EPSS 0.2% chance of exploitation in 30 days, percentile 10%
public exploits
0
none known

Summary

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

perf/core: Add RCU read lock protection to perf_iterate_ctx()

The perf_iterate_ctx() function performs RCU list traversal but currently lacks RCU read lock protection. This causes lockdep warnings when running perf probe with unshare(1) under CONFIG_PROVE_RCU_LIST=y:

WARNING: suspicious RCU usage kernel/events/core.c:8168 RCU-list traversed in non-reader section!!

Call Trace: lockdep_rcu_suspicious ? perf_event_addr_filters_apply perf_iterate_ctx perf_event_exec begin_new_exec ? load_elf_phdrs load_elf_binary ? lock_acquire ? find_held_lock ? bprm_execve bprm_execve do_execveat_common.isra.0 __x64_sys_execve do_syscall_64 entry_SYSCALL_64_after_hwframe

This protection was previously present but was removed in commit bd2756811766 ("perf: Rewrite core context handling"). Add back the necessary rcu_read_lock()/rcu_read_unlock() pair around perf_iterate_ctx() call in perf_event_exec().

[ mingo: Use scoped_guard() as suggested by Peter ]

Patch / fix

  • Linux Linux 6.6.81, 6.12.18, 6.13.6, 6.14
  • linux Debian 14, Debian 13 6.12.19-1

debian advisories DEBIAN-CVE-2025-21889

  • linux Ubuntu 24.04 LTS 6.8.0-84.84
  • linux-aws Ubuntu 24.04 LTS 6.8.0-1039.41
  • linux-gcp Ubuntu 24.04 LTS 6.8.0-1040.42
  • linux-gke Ubuntu 24.04 LTS 6.8.0-1036.40
  • linux-ibm Ubuntu 24.04 LTS 6.8.0-1037.37
  • linux-azure Ubuntu 24.04 LTS 6.8.0-1038.44
  • linux-gkeop Ubuntu 24.04 LTS 6.8.0-1023.25
  • linux-raspi Ubuntu 24.04 LTS 6.8.0-1039.43

ubuntu advisories UBUNTU-CVE-2025-21889

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • kernel-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.20.3.1
  • kernel-syms-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.20.3.1
  • kernel-source-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.20.3.1
  • kernel-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.39.1
  • kernel-syms-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.39.1
  • kernel-rt_debug Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.39.1
  • kernel-source-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.39.1
  • kernel-64kb SLE Module for Basesystem 15 SP7 6.4.0-150700.53.3.1

suse advisories SUSE-SU-2025:01967-1SUSE-SU-2025:01964-1SUSE-SU-2025:01951-1SUSE-SU-2025:01919-1SUSE-SU-2025:01707-1SUSE-SU-2025:01614-1

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2025-21889 updated cvss 3.3

kernel: perf/core: Add RCU read lock protection to perf_iterate_ctx()

  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more
    affected: workaround, no fix planned “Out of support scope”
  • Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernel
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
total
Assessed
24 d ago

Exploit prediction

0.21% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
NVD 3.1 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected products

  • Linux Linux

Classification

Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.