Skip to content
OpenAdvisories
Unscored CVE-2026-23159 EUVD-2026-5878GHSA-398f-64gc-qxqm

perf: sched: Fix perf crash with new is_user_task() helper

Published Feb 14, 2026 · Updated May 23, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.8 Package: linux-aws-6.17 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-6.8 Package: linux-aws-fips Package: linux-azure Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.8 Package: linux-azure-6.11 Package: linux-azure-6.17 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-6.8 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fips Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.8 Package: linux-gcp-6.11 Package: linux-gcp-6.17 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-6.8 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.19 Package: linux-hwe-5.8 Package: linux-hwe-6.11 Package: linux-hwe-6.17 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-6.8 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-6.8 Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-lowlatency Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.11 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lowlatency-hwe-6.8 Package: linux-nvidia Package: linux-nvidia-6.11 Package: linux-nvidia-6.17 Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-6.8 Package: linux-nvidia-lowlatency Package: linux-nvidia-tegra Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.11 Package: linux-oem-6.17 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.3 Package: linux-oracle-5.8 Package: linux-oracle-6.14 Package: linux-oracle-6.17 Package: linux-oracle-6.5 Package: linux-oracle-6.8 Package: linux-raspi Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-realtime-6.14 Package: linux-realtime-6.17 Package: linux-realtime-6.8 Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.14 Package: linux-riscv-6.17 Package: linux-riscv-6.5 Package: linux-riscv-6.8 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

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

perf: sched: Fix perf crash with new is_user_task() helper

In order to do a user space stacktrace the current task needs to be a user
task that has executed in user space. It use to be possible to test if a
task is a user task or not by simply checking the task_struct mm field. If
it was non NULL, it was a user task and if not it was a kernel task.

But things have changed over time, and some kernel tasks now have their
own mm field.

An idea was made to instead test PF_KTHREAD and two functions were used to
wrap this check in case it became more complex to test if a task was a
user task or not[1]. But this was rejected and the C code simply checked
the PF_KTHREAD directly.

It was later found that not all kernel threads set PF_KTHREAD. The io-uring
helpers instead set PF_USER_WORKER and this needed to be added as well.

But checking the flags is still not enough. There's a very small window
when a task exits that it frees its mm field and it is set back to NULL.
If perf were to trigger at this moment, the flags test would say its a
user space task but when perf would read the mm field it would crash with
at NULL pointer dereference.

Now there are flags that can be used to test if a task is exiting, but
they are set in areas that perf may still want to profile the user space
task (to see where it exited). The only real test is to check both the
flags and the mm field.

Instead of making this modification in every location, create a new
is_user_task() helper function that does all the tests needed to know if
it is safe to read the user space memory or not.

[1] https://lore.kernel.org/all/20250425204120.639530125@goodmis.org/

Affected products

VendorProductAffectedFixed
Linux Linux 6.6.116 – < 6.6.123, 6.12.57 – < 6.12.69, 6.17.7 – < 6.18, 6.18 6.6.123

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.18.9-1 —
Debian 13 linux 6.12.69-1 —
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 24.04 LTS linux-bluefield 6.8.0-1022.26 —
Ubuntu 25.10 linux +8 No fix yet —
Ubuntu 24.04 LTS linux 6.8.0-117.117 USN-8278-1
Ubuntu 24.04 LTS linux-aws 6.8.0-1055.58 USN-8278-1
Ubuntu 24.04 LTS linux-azure 6.8.0-1056.62 USN-8278-2
Ubuntu 24.04 LTS linux-azure-6.17 6.17.0-1021.21~24.04.1 USN-8604-1
Ubuntu 24.04 LTS linux-azure-fde-6.17 6.17.0-1018.18~24.04.1 USN-8605-1
Ubuntu 24.04 LTS linux-gcp 6.8.0-1058.61 USN-8278-1
Ubuntu 24.04 LTS linux-gcp-6.17 6.17.0-1021.24~24.04.1 USN-8570-1
Ubuntu 24.04 LTS linux-gke 6.8.0-1054.60 USN-8278-1
Ubuntu 24.04 LTS linux-gkeop 6.8.0-1041.44 USN-8278-1
Ubuntu 24.04 LTS linux-hwe-6.17 6.17.0-41.41~24.04.1 —
Ubuntu 24.04 LTS linux-ibm 6.8.0-1055.56 USN-8278-1
Ubuntu 24.04 LTS linux-lowlatency 6.8.0-117.117.1 USN-8278-1
Ubuntu 24.04 LTS linux-nvidia 6.8.0-1054.57 USN-8289-1
Ubuntu 24.04 LTS linux-nvidia-6.17 6.17.0-1031.31 USN-8669-1
Ubuntu 24.04 LTS linux-nvidia-lowlatency 6.8.0-1054.57.1 USN-8289-1
Ubuntu 24.04 LTS linux-nvidia-tegra 6.8.0-1024.24 USN-8296-2
Ubuntu 24.04 LTS linux-oem-6.17 6.17.0-1030.30 USN-8594-1
Ubuntu 24.04 LTS linux-oracle 6.8.0-1054.55 —
Ubuntu 24.04 LTS linux-oracle-6.17 6.17.0-1019.19~24.04.3 USN-8570-2
Ubuntu 24.04 LTS linux-raspi 6.8.0-1056.60 USN-8278-1
Ubuntu 24.04 LTS linux-riscv +13 No fix yet —
Ubuntu 24.04 LTS linux-xilinx 6.8.0-1032.33 USN-8499-1
Ubuntu 22.04 LTS linux-aws-6.8 6.8.0-1057.60~22.04.1 —
Ubuntu 22.04 LTS linux-azure-6.8 6.8.0-1059.65~22.04.1 USN-8440-1
Ubuntu 22.04 LTS linux-gcp-6.8 6.8.0-1060.63~22.04.1 —
Ubuntu 22.04 LTS linux-hwe-6.8 6.8.0-124.124~22.04.1 —
Ubuntu 22.04 LTS linux-ibm-6.8 6.8.0-1055.56~22.04.1 USN-8278-1
Ubuntu 22.04 LTS linux-lowlatency-hwe-6.8 6.8.0-117.117.1~22.04.1 USN-8278-1
Ubuntu 22.04 LTS linux-nvidia-6.8 6.8.0-1054.57~22.04.1 USN-8289-2
Ubuntu 22.04 LTS linux-oracle-6.8 6.8.0-1054.55~22.04.1 —
Ubuntu 22.04 LTS linux-riscv +32 No fix yet —
Ubuntu 22.04 LTS linux-riscv-6.8 6.8.0-117.117~22.04.1 —
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Show 5 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 24.04 LTS linux-raspi-realtime 6.8.0-2045.46 USN-8278-1
Ubuntu Pro Realtime 24.04 LTS linux-realtime 6.8.1-1051.52 USN-8278-1
Ubuntu Pro Realtime 24.04 LTS linux-realtime-6.14 No fix yet —
Ubuntu Pro Realtime 24.04 LTS linux-realtime-6.17 6.17.0-1018.20~24.04.1 USN-8570-1
Ubuntu Pro Realtime 22.04 LTS linux-realtime-6.8 6.8.1-1051.52~22.04.1 USN-8278-1
Ubuntu Pro FIPS-updates 24.04 LTS linux-aws-fips 6.8.0-1055.58+fips1 USN-8278-1
Ubuntu Pro FIPS-updates 24.04 LTS linux-azure-fips 6.8.0-1059.65+fips1 USN-8393-1
Ubuntu Pro FIPS-updates 24.04 LTS linux-fips 6.8.0-116.116+fips1 USN-8296-1
Ubuntu Pro FIPS-updates 24.04 LTS linux-gcp-fips 6.8.0-1058.61+fips1 USN-8278-1

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 kernel-livepatch-6.12.73-95.123 1:1.0-0.amzn2023 ALAS2023-2026-1487
Amazon Linux 2023 perf6.12 +14 1:6.12.73-95.123.amzn2023 ALAS2023-2026-1487

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 kernel-uek +34 6.12.0-200.74.27.el10uek ELSA-2026-50372, ELSA-2026-50232, ELSA-2026-50160

Advisories 20

References