CVE-2025-38424: perf: Fix sample vs do_exit()

Published Jul 25, 2025
·
Updated

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

perf: Fix sample vs doexit()

Baisheng Gao reported an ARM64 crash, which Mark decoded as being a synchronous external abort -- most likely due to trying to access MMIO in bad ways.

The crash further shows perf trying to do a user stack sample while in exitmmap()'s tlbfinishmmu() -- i.e. while tearing down the address space it is trying to access.

It turns out that we stop perf after we tear down the userspace mm; a receipie for disaster, since perf likes to access userspace for various reasons.

Flip this order by moving up where we stop perf in doexit().

Additionally, harden PERFSAMPLECALLCHAIN and PERFSAMPLESTACKUSER to abort when the current task does not have an mm (exitmm() makes sure to set current->mm = NULL; before commencing with the actual teardown). Such that CPU wide events don't trip on this same problem.

Affected Software

14 affected componentsFixes available
Linux Linux kernel
Microsoft azl3 kernel 6.6.92.2-2
Microsoft azl3 kernel 6.6.96.1-1
Linux Linux kernel>=3.7<5.4.295
Linux Linux kernel>=5.5<5.10.239
Linux Linux kernel>=5.11<5.15.186
Linux Linux kernel>=5.16<6.1.142
Linux Linux kernel>=6.2<6.6.95
Linux Linux kernel>=6.7<6.12.35
Linux Linux kernel>=6.13<6.15.4
Linux Linux kernel=6.16-rc1
Linux Linux kernel=6.16-rc2
Debian Debian Linux=11.0
debian/linux
6.1.176-16.1.190-16.12.107-16.12.113-17.2.12-17.2.13-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.113-1Fixed in 7.2.12-1Fixed in 7.2.13-1
  2. Compensating control

    Harden PERF_SAMPLE_CALLCHAIN and PERF_SAMPLE_STACK_USER to abort when the current task does not have an mm, and move stopping perf earlier in do_exit() so it occurs before userspace mm teardown.

Event History

Jul 25, 2025
CVE Published
via MITRE·02:16 PM
Data Sourced
via MITRE·02:16 PM
DescriptionSeverity
Data Sourced
via NVD·03:15 PM
RemedyDescriptionSeverityAffected Software
Aug 7, 2025
Data Sourced
via Microsoft·07:00 AM
DescriptionSeverityWeaknessAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

What is the severity of CVE-2025-38424?

CVE-2025-38424 has been classified with a severity level that indicates a risk of system crashes on the Linux Kernel.

2

How do I fix CVE-2025-38424?

To mitigate CVE-2025-38424, update your Linux kernel to a version that includes the fix for the identified vulnerability.

3

What type of systems are affected by CVE-2025-38424?

CVE-2025-38424 affects systems running the Linux kernel, particularly those using ARM64 architecture.

4

What does CVE-2025-38424 involve?

CVE-2025-38424 involves a crash caused by improper access to Memory-Mapped I/O (MMIO) in the Linux kernel.

5

When was CVE-2025-38424 reported?

CVE-2025-38424 was reported following an ARM64 crash and has led to a resolution in the Linux kernel.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203