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 perf-debuginfoUpgrade kernel-livepatch-5.10.233-223.887Upgrade kernel-tools-develUpgrade kernel-develUpgrade perfUpgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade kernel-debuginfoUpgrade kernel-headersUpgrade python-perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.15.176-118.170Upgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade bpftoolUpgrade python-perf | Mar 14, 2025 | Dec 27, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-develUpgrade perfUpgrade kernel-toolsUpgrade kernel-libbpfUpgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade bpftool-debuginfoUpgrade python3-perfUpgrade python3-perf-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpf-staticUpgrade kernel-modules-extraUpgrade kernel-debuginfoUpgrade kernel-modules-extra-commonUpgrade kernel-libbpf-develUpgrade kernel-headersUpgrade kernel-livepatch-6.1.124-134.200Upgrade kernelUpgrade kernel-debuginfo-common-x86_64Upgrade perf-debuginfo | Mar 27, 2025 | Dec 27, 2024 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Jan 13, 2025 | Dec 27, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Feb 11, 2025 | Dec 27, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-6.11.0-1011-gcpUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-6.11.0-21-genericUpgrade linux-image-5.15.0-1062-gkeopUpgrade linux-image-raspiUpgrade linux-image-raspi-nolpaeUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.15.0-135-fipsUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-6.11.0-1011-lowlatencyUpgrade linux-image-6.11.0-1012-azureUpgrade linux-image-azure-cvmUpgrade linux-image-azure-fdeUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.15.0-136-genericUpgrade linux-image-6.11.0-1011-gcp-64kUpgrade linux-image-5.15.0-136-generic-64kUpgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-6.11.0-1011-awsUpgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-generic-lpaeUpgrade linux-image-gke-5.15Upgrade linux-image-gcp-64kUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-oracleUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.11.0-1017-oemUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-5.15.0-1074-nvidia-lowlatencyUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-awsUpgrade linux-image-azure-nvidiaUpgrade linux-image-azureUpgrade linux-image-5.15.0-1080-aws-fipsUpgrade linux-image-aws-fipsUpgrade linux-image-azure-fipsUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-kvmUpgrade linux-image-ibmUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-1081-gcpUpgrade linux-image-oem-24.04bUpgrade linux-image-aws-lts-22.04Upgrade linux-image-5.15.0-135-generic-lpaeUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-ibm-classicUpgrade linux-image-gcp-fipsUpgrade linux-image-5.15.0-1079-gcp-fipsUpgrade linux-image-fipsUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.11.0-1012-azure-fdeUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-virtualUpgrade linux-image-oem-22.04Upgrade linux-image-oem-20.04cUpgrade linux-image-5.15.0-1074-raspiUpgrade linux-image-6.11.0-1010-raspiUpgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-6.11.0-1007-realtimeUpgrade linux-image-genericUpgrade linux-image-5.15.0-1073-intel-iot-realtimeUpgrade linux-image-gcpUpgrade linux-image-5.15.0-1086-azureUpgrade linux-image-6.11.0-21-generic-64kUpgrade linux-image-6.11.0-1011-lowlatency-64kUpgrade linux-image-6.8.0-1027-awsUpgrade linux-image-lowlatencyUpgrade linux-image-gkeop-6.8Upgrade linux-image-oem-20.04Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1077-gkeUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-6.11.0-1013-oracleUpgrade linux-image-generic-64kUpgrade linux-image-5.15.0-1080-realtimeUpgrade linux-image-5.15.0-135-genericUpgrade linux-image-oem-22.04bUpgrade linux-image-5.15.0-1072-ibmUpgrade linux-image-5.15.0-1084-azureUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-5.15.0-1077-intel-iotgUpgrade linux-image-gkeUpgrade linux-image-lowlatency-64kUpgrade linux-image-5.15.0-1074-nvidiaUpgrade linux-image-oem-20.04dUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-1026-oemUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidiaUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1086-azure-fdeUpgrade linux-image-5.15.0-135-generic-64kUpgrade linux-image-5.15.0-1079-gcpUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-oem-24.04aUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-intel-iotgUpgrade linux-image-5.15.0-1083-azure-fipsUpgrade linux-image-realtimeUpgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-5.15.0-135-lowlatencyUpgrade linux-image-5.15.0-136-generic-lpaeUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-1075-intel-iotgUpgrade linux-image-5.15.0-1077-oracleUpgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-135-lowlatency-64kUpgrade linux-image-oem-20.04bUpgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.11.0-1013-oracle-64kUpgrade linux-image-oem-24.04Upgrade linux-image-nvidia-tegraUpgrade linux-image-intelUpgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1026-nvidia | 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