Skip to content
CVE PROGRAM SOURCE RECORD7.8 High

CVE-2025-38424

perf: Fix sample vs do_exit()

Description

In the Linux kernel, the following vulnerability has been resolved: perf: Fix sample vs do_exit() 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 exit_mmap()'s tlb_finish_mmu() -- 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 do_exit(). Additionally, harden PERF_SAMPLE_CALLCHAIN and PERF_SAMPLE_STACK_USER to abort when the current task does not have an mm (exit_mm() 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 products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 7b8f3c72175c6a63a95cf2e219f8b78e2baad34eaffected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 507c9a595bad3abd107c6a8857d7fd125d89f386affected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < a9f6aab7910a0ef2895797f15c947f6d1053160faffected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 975ffddfa2e19823c719459d2364fcaa17673964affected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 2ee6044a693735396bb47eeaba1ac3ae26c1c99baffected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 456019adaa2f5366b89c868dea9b483179bece54affected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 7311970d07c4606362081250da95f2c7901fc0dbaffected
  • c5ebcedb566ef17bda7b02686e0d658a7bb42ee7 to < 4f6fc782128355931527cefe3eb45338abd8ab39affected

Linux Linux

Default version status: affected

  • 3.7affected
  • 0 to < 3.7unaffected
  • 5.4.295 to ≤ 5.4.*unaffected
  • 5.10.239 to ≤ 5.10.*unaffected
  • 5.15.186 to ≤ 5.15.*unaffected
  • 6.1.142 to ≤ 6.1.*unaffected
  • 6.6.95 to ≤ 6.6.*unaffected
  • 6.12.35 to ≤ 6.12.*unaffected
  • 6.15.4 to ≤ 6.15.*unaffected
  • 6.16 to ≤ *unaffected

References