In the Linux kernel, the following vulnerability has been resolved:
kcsan: Turn report_filterlist_lock into a raw_spinlock
Ran Xiaokai reports that with a KCSAN-enabled PREEMPT_RT kernel, we can see splats like:
| BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48 | in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 0, name: swapper/1 | preempt_count: 10002, expected: 0 | RCU nest depth: 0, expected: 0 | no locks held by swapper/1/0. | irq event stamp: 156674 | hardirqs last enabled at (156673): [<ffffffff81130bd9>] do_idle+0x1f9/0x240 | hardirqs last disabled at (156674): [<ffffffff82254f84>] sysvec_apic_timer_interrupt+0x14/0xc0 | softirqs last enabled at (0): [<ffffffff81099f47>] copy_process+0xfc7/0x4b60 | softirqs last disabled at (0): [<0000000000000000>] 0x0 | Preemption disabled at: | [<ffffffff814a3e2a>] paint_ptr+0x2a/0x90 | CPU: 1 UID: 0 PID: 0 Comm: swapper/1 Not tainted 6.11.0+ #3 | Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org 04/01/2014 | Call Trace: | <IRQ> | dump_stack_lvl+0x7e/0xc0 | dump_stack+0x1d/0x30 | __might_resched+0x1a2/0x270 | rt_spin_lock+0x68/0x170 | kcsan_skip_report_debugfs+0x43/0xe0 | print_report+0xb5/0x590 | kcsan_report_known_origin+0x1b1/0x1d0 | kcsan_setup_watchpoint+0x348/0x650 | __tsan_unaligned_write1+0x16d/0x1d0 | hrtimer_interrupt+0x3d6/0x430 | __sysvec_apic_timer_interrupt+0xe8/0x3a0 | sysvec_apic_timer_interrupt+0x97/0xc0 | </IRQ>
On a detected data race, KCSAN's reporting logic checks if it should filter the report. That list is protected by the report_filterlist_lock *non-raw* spinlock which may sleep on RT kernels.
Since KCSAN may report data races in any context, convert it to a raw_spinlock.
This requires being careful about when to allocate memory for the filter list itself which can be done via KCSAN's debugfs interface. Concurrent modification of the filter list via debugfs should be rare: the chosen strategy is to optimistically pre-allocate memory before the critical section and discard if unused.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-tools-debuginfoUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.15.176-118.170Upgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-headersUpgrade kernel-toolsUpgrade bpftoolUpgrade perfUpgrade kernel-develUpgrade kernelUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-5.10.233-223.887Upgrade kernel-tools-develUpgrade perf-debuginfoUpgrade kernel-debuginfo | Mar 14, 2025 | Dec 27, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-develUpgrade python3-perfUpgrade kernel-toolsUpgrade kernel-tools-develUpgrade bpftool-debuginfoUpgrade bpftoolUpgrade kernel-libbpfUpgrade kernel-tools-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-modules-extraUpgrade perfUpgrade python3-perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-libbpf-develUpgrade kernel-headersUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-6.1.124-134.200Upgrade kernelUpgrade kernel-modules-extra-commonUpgrade perf-debuginfo | Mar 27, 2025 | Dec 27, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Jan 13, 2025 | Dec 27, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Feb 11, 2025 | Dec 27, 2024 |
| Ubuntu | — | Upgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-5.15.0-1079-gcpUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1075-intel-iotgUpgrade linux-image-generic-64kUpgrade linux-image-5.15.0-135-generic-64kUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-gkeop-6.8Upgrade linux-image-gkeUpgrade linux-image-5.15.0-1077-oracleUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-gkeop-5.15Upgrade linux-image-oem-20.04dUpgrade linux-image-6.8.0-1027-awsUpgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-6.11.0-1013-oracleUpgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-5.15.0-1077-gkeUpgrade linux-image-5.15.0-1084-azureUpgrade linux-image-6.11.0-21-generic-64kUpgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-gcpUpgrade linux-image-5.15.0-135-genericUpgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-nvidia-tegraUpgrade linux-image-5.15.0-1074-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-virtualUpgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-5.15.0-1073-intel-iot-realtimeUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-6.11.0-1007-realtimeUpgrade linux-image-5.15.0-1072-ibmUpgrade linux-image-oem-20.04cUpgrade linux-image-oem-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-nvidia-64kUpgrade linux-image-5.15.0-1080-realtimeUpgrade linux-image-oem-20.04Upgrade linux-image-realtimeUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-22.04bUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-genericUpgrade linux-image-raspi-realtimeUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-intelUpgrade linux-image-oem-20.04bUpgrade linux-image-5.15.0-1086-azureUpgrade linux-image-5.15.0-135-lowlatencyUpgrade linux-image-6.11.0-1011-lowlatency-64kUpgrade linux-image-5.15.0-1083-azure-fipsUpgrade linux-image-lowlatency-64kUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1026-oemUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-intel-iotgUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-135-lowlatency-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.11.0-1013-oracle-64kUpgrade linux-image-6.11.0-1010-raspiUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-5.15.0-1086-azure-fdeUpgrade linux-image-nvidiaUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-5.15.0-1077-intel-iotgUpgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-5.15.0-1074-nvidiaUpgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-gkeopUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-5.15.0-136-generic-lpaeUpgrade linux-image-oem-24.04bUpgrade linux-image-generic-lpaeUpgrade linux-image-oracleUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-aws-lts-22.04Upgrade linux-image-ibm-classicUpgrade linux-image-awsUpgrade linux-image-6.11.0-1012-azure-fdeUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-raspiUpgrade linux-image-6.11.0-21-genericUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-ibmUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-gke-5.15Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-azureUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-fipsUpgrade linux-image-oem-22.04dUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-gcp-64kUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-5.15.0-135-generic-lpaeUpgrade linux-image-5.15.0-1081-gcpUpgrade linux-image-5.15.0-1080-aws-fipsUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-aws-fipsUpgrade linux-image-gcp-fipsUpgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.11.0-1017-oemUpgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-5.15.0-1074-nvidia-lowlatencyUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1079-gcp-fipsUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-kvmUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-22.04aUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.11.0-1011-lowlatencyUpgrade linux-image-6.11.0-1011-gcpUpgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.15.0-135-fipsUpgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-5.15.0-1062-gkeopUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-5.15.0-136-genericUpgrade linux-image-azure-cvmUpgrade linux-image-azure-fdeUpgrade linux-image-6.11.0-1012-azureUpgrade linux-image-6.11.0-1011-gcp-64kUpgrade linux-image-6.11.0-1011-awsUpgrade linux-image-5.15.0-136-generic-64kUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-nvidia-64k-6.8 | Mar 28, 2025 | Dec 27, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 13, 2025 | Dec 27, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub