In the Linux kernel, the following vulnerability has been resolved:
firmware: arm_ffa: Replace mutex with rwlock to avoid sleep in atomic context
The current use of a mutex to protect the notifier hashtable accesses can lead to issues in the atomic context. It results in the below kernel warnings:
| BUG: sleeping function called from invalid context at kernel/locking/mutex.c:258 | in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 9, name: kworker/0:0 | preempt_count: 1, expected: 0 | RCU nest depth: 0, expected: 0 | CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted 6.14.0 #4 | Workqueue: ffa_pcpu_irq_notification notif_pcpu_irq_work_fn | Call trace: | show_stack+0x18/0x24 (C) | dump_stack_lvl+0x78/0x90 | dump_stack+0x18/0x24 | __might_resched+0x114/0x170 | __might_sleep+0x48/0x98 | mutex_lock+0x24/0x80 | handle_notif_callbacks+0x54/0xe0 | notif_get_and_handle+0x40/0x88 | generic_exec_single+0x80/0xc0 | smp_call_function_single+0xfc/0x1a0 | notif_pcpu_irq_work_fn+0x2c/0x38 | process_one_work+0x14c/0x2b4 | worker_thread+0x2e4/0x3e0 | kthread+0x13c/0x210 | ret_from_fork+0x10/0x20
To address this, replace the mutex with an rwlock to protect the notifier hashtable accesses. This ensures that read-side locking does not sleep and multiple readers can acquire the lock concurrently, avoiding unnecessary contention and potential deadlocks. Writer access remains exclusive, preserving correctness.
This change resolves warnings from lockdep about potential sleep in atomic context.
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_2023 | — | Upgrade kernel6.12-tools-debuginfoUpgrade perf6.12-debuginfoUpgrade kernel-livepatch-6.12.37-61.105Upgrade kernel6.12-develUpgrade bpftool6.12-debuginfoUpgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.12-toolsUpgrade kernel6.12-headersUpgrade bpftool6.12Upgrade kernel6.12-modules-extraUpgrade python3-perf6.12-debuginfoUpgrade kernel6.12-debuginfoUpgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-libbpf-staticUpgrade kernel6.12-libbpfUpgrade perf6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12Upgrade kernel6.12-tools-develUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-libbpf-devel | Sep 9, 2025 | Jul 25, 2025 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-6.14.0-1018-gcpUpgrade linux-image-virtualUpgrade linux-image-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-oem-6.14Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-1046-azureUpgrade linux-image-azure-6.8Upgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-fipsUpgrade linux-image-realtimeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-gkeUpgrade linux-image-xilinxUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oem-24.04bUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-awsUpgrade linux-image-azure-fipsUpgrade linux-image-generic-64k-6.14Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-6.14.0-1015-oracle-64kUpgrade linux-image-lowlatency-6.8Upgrade linux-image-oem-22.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-kvmUpgrade linux-image-6.14.0-1015-aws-64kUpgrade linux-image-oracleUpgrade linux-image-azure-6.14Upgrade linux-image-generic-lpaeUpgrade linux-image-6.14.0-1018-gcp-64kUpgrade linux-image-6.8.0-100-fipsUpgrade linux-image-aws-64kUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-generic-64k-6.8Upgrade linux-image-azure-fips-6.8Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-oracle-6.14Upgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-ibm-6.8Upgrade linux-image-generic-6.8Upgrade linux-image-nvidia-64kUpgrade linux-image-oem-22.04cUpgrade linux-image-azureUpgrade linux-image-6.8.0-1046-awsUpgrade linux-image-nvidiaUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-azure-nvidia-6.14Upgrade linux-image-oracle-6.8Upgrade linux-image-6.14.0-1016-raspiUpgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-6.14.0-1015-awsUpgrade linux-image-nvidia-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-generic-6.14Upgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-aws-6.8Upgrade linux-image-6.14.0-34-generic-64kUpgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-6.14.0-1014-oemUpgrade linux-image-6.14.0-1015-oracleUpgrade linux-image-6.14.0-1014-realtimeUpgrade linux-image-virtual-6.14Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-22.04aUpgrade linux-image-intel-iotgUpgrade linux-image-gke-64k-6.8Upgrade linux-image-aws-fips-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-raspiUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-oem-22.04bUpgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-xilinx-6.8Upgrade linux-image-ibmUpgrade linux-image-gke-6.8Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-aws-6.14Upgrade linux-image-gcp-fipsUpgrade linux-image-gcp-6.14Upgrade linux-image-realtime-6.8.1Upgrade linux-image-lowlatencyUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-raspi-6.8Upgrade linux-image-raspi-6.14Upgrade linux-image-gcp-64k-6.14Upgrade linux-image-aws-64k-6.14Upgrade linux-image-6.14.0-1007-azure-nvidiaUpgrade linux-image-virtual-6.8Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-6.8.0-1051-azureUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-azure-nvidiaUpgrade linux-image-oem-24.04aUpgrade linux-image-generic-64kUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-6.14.0-34-genericUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-oracle-64k-6.14Upgrade linux-image-gcpUpgrade linux-image-aws-64k-6.8Upgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-gke-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-realtime-6.14Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oem-24.04cUpgrade linux-image-oem-22.04dUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-ibm-classicUpgrade linux-image-gkeopUpgrade linux-image-genericUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-100-genericUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-aws-lts-24.04Upgrade linux-image-6.14.0-1014-azure | Jul 31, 2025 | Jul 25, 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