In the Linux kernel, the following vulnerability has been resolved:
rcu: Protect rcu_print_task_exp_stall() ->exp_tasks access
For kernels built with CONFIG_PREEMPT_RCU=y, the following scenario can result in a NULL-pointer dereference:
CPU1 CPU2 rcu_preempt_deferred_qs_irqrestore rcu_print_task_exp_stall if (special.b.blocked) READ_ONCE(rnp->exp_tasks) != NULL raw_spin_lock_rcu_node np = rcu_next_node_entry(t, rnp) if (&t->rcu_node_entry == rnp->exp_tasks) WRITE_ONCE(rnp->exp_tasks, np) .... raw_spin_unlock_irqrestore_rcu_node raw_spin_lock_irqsave_rcu_node t = list_entry(rnp->exp_tasks->prev, struct task_struct, rcu_node_entry) (if rnp->exp_tasks is NULL, this will dereference a NULL pointer)
The problem is that CPU2 accesses the rcu_node structure's->exp_tasks field without holding the rcu_node structure's ->lock and CPU2 did not observe CPU1's change to rcu_node structure's ->exp_tasks in time. Therefore, if CPU1 sets rcu_node structure's->exp_tasks pointer to NULL, then CPU2 might dereference that NULL pointer.
This commit therefore holds the rcu_node structure's ->lock while accessing that structure's->exp_tasks field.
[ paulmck: Apply Frederic Weisbecker feedback. ]
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 kernelUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-tools-debuginfoUpgrade kernel-headersUpgrade kernel-tools-develUpgrade python-perf-debuginfoUpgrade python-perfUpgrade kernel-livepatch-5.15.117-72.142Upgrade kernel-livepatch-5.10.184-174.730Upgrade bpftool-debuginfoUpgrade perf-debuginfoUpgrade perfUpgrade kernel-toolsUpgrade kernel-debuginfo-common-aarch64Upgrade bpftool | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade kernel-headersUpgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade bpftoolUpgrade python3-perf-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-libbpf-staticUpgrade kernel-develUpgrade python3-perfUpgrade kernel-debuginfoUpgrade kernelUpgrade kernel-livepatch-6.1.34-56.100Upgrade kernel-tools-develUpgrade kernel-debuginfo-common-aarch64Upgrade perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade perfUpgrade kernel-libbpfUpgrade kernel-libbpf-devel | Oct 16, 2025 | Sep 18, 2025 |
| Debian | — | Upgrade linux | Sep 22, 2025 | Sep 22, 2025 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Sep 18, 2025 |
| Ubuntu | — | Upgrade linux-nvidia-tegra-igxUpgrade linux-gcpUpgrade linux-intel-iotgUpgrade linux-nvidia-tegraUpgrade linux-intel-iot-realtimeUpgrade linux-ibmUpgrade linux-ibm-5.15Upgrade linux-riscv-5.15Upgrade linux-awsUpgrade linux-bluefieldUpgrade linux-kvmUpgrade linux-oracleUpgrade linux-xilinx-zynqmpUpgrade linux-nvidiaUpgrade linux-oracle-5.15Upgrade linux-raspiUpgrade linux-azureUpgrade linux-gkeopUpgrade linux-intel-iotg-5.15Upgrade linux-gcp-5.15Upgrade linux-hwe-5.15Upgrade linuxUpgrade linux-lowlatency-hwe-5.15Upgrade linux-gkeUpgrade linux-azure-5.15Upgrade linux-aws-5.15Upgrade linux-nvidia-tegra-5.15Upgrade linux-realtimeUpgrade linux-lowlatencyUpgrade linux-azure-fde-5.15 | Sep 26, 2025 | Sep 18, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 15, 2025 | Sep 18, 2025 |
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