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 perf6.12Upgrade kernel6.12-modules-extraUpgrade kernel6.12-libbpfUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-tools-develUpgrade kernel6.12Upgrade python3-perf6.12Upgrade kernel6.12-debuginfoUpgrade kernel6.12-libbpf-develUpgrade bpftool6.12Upgrade python3-perf6.12-debuginfoUpgrade kernel6.12-headersUpgrade kernel6.12-toolsUpgrade kernel6.12-libbpf-staticUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-debuginfo-common-x86_64Upgrade bpftool6.12-debuginfoUpgrade kernel6.12-develUpgrade kernel-livepatch-6.12.37-61.105Upgrade kernel6.12-libbpf-debuginfoUpgrade perf6.12-debuginfoUpgrade kernel6.12-tools-debuginfo | Sep 9, 2025 | Jul 25, 2025 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Ubuntu | — | Upgrade linux-image-oem-22.04bUpgrade linux-image-6.8.0-1046-awsUpgrade linux-image-oem-24.04cUpgrade linux-image-azure-nvidia-6.14Upgrade linux-image-lowlatencyUpgrade linux-image-aws-lts-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-6.8.0-100-genericUpgrade linux-image-gkeopUpgrade linux-image-ibm-classicUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-100-lowlatencyUpgrade linux-image-6.8.0-1047-gcpUpgrade linux-image-nvidia-6.8Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibmUpgrade linux-image-raspiUpgrade linux-image-gcp-fipsUpgrade linux-image-gke-6.8Upgrade linux-image-6.14.0-1015-awsUpgrade linux-image-6.14.0-1016-raspiUpgrade linux-image-xilinx-6.8Upgrade linux-image-6.8.0-1043-gkeUpgrade linux-image-aws-6.8Upgrade linux-image-6.14.0-1014-oemUpgrade linux-image-6.14.0-1014-realtimeUpgrade linux-image-6.8.1-1041-realtimeUpgrade linux-image-aws-fips-6.8Upgrade linux-image-oem-22.04aUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-gcp-64kUpgrade linux-image-aws-6.14Upgrade linux-image-virtual-6.14Upgrade linux-image-generic-6.14Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-6.14.0-1015-oracleUpgrade linux-image-gcpUpgrade linux-image-realtime-6.8.1Upgrade linux-image-aws-64k-6.14Upgrade linux-image-6.8.0-1047-gcp-fipsUpgrade linux-image-raspi-6.14Upgrade linux-image-6.8.0-1047-raspiUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-gke-64kUpgrade linux-image-oem-22.04dUpgrade linux-image-realtime-6.14Upgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1046-azure-fipsUpgrade linux-image-aws-64k-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1046-nvidia-lowlatency-64kUpgrade linux-image-gcp-64k-6.14Upgrade linux-image-azure-nvidiaUpgrade linux-image-6.8.0-1023-xilinxUpgrade linux-image-6.14.0-1007-azure-nvidiaUpgrade linux-image-oracle-64k-6.14Upgrade linux-image-6.8.0-1051-azureUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.8.0-1043-oracleUpgrade linux-image-6.8.0-1046-aws-fipsUpgrade linux-image-generic-64kUpgrade linux-image-genericUpgrade linux-image-6.14.0-34-generic-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oem-24.04aUpgrade linux-image-raspi-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-azureUpgrade linux-image-nvidiaUpgrade linux-image-virtual-6.8Upgrade linux-image-6.14.0-34-genericUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-oracle-6.8Upgrade linux-image-gcp-6.14Upgrade linux-image-6.14.0-1014-azureUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1044-ibmUpgrade linux-image-gke-64k-6.8Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-intel-iotgUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1046-aws-64kUpgrade linux-image-6.8.0-1046-nvidiaUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-azure-fipsUpgrade linux-image-oem-6.14Upgrade linux-image-realtimeUpgrade linux-image-aws-fipsUpgrade linux-image-generic-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-6.14.0-1018-gcpUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-2037-raspi-realtimeUpgrade linux-image-lowlatency-6.8Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-oracleUpgrade linux-image-6.8.0-100-fipsUpgrade linux-image-raspi-realtimeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-aws-64kUpgrade linux-image-6.8.0-1030-gkeopUpgrade linux-image-generic-64k-6.8Upgrade linux-image-6.14.0-1018-gcp-64kUpgrade linux-image-oem-22.04Upgrade linux-image-kvmUpgrade linux-image-generic-lpaeUpgrade linux-image-awsUpgrade linux-image-6.8.0-100-generic-64kUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-generic-64k-6.14Upgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1043-oracle-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-xilinxUpgrade linux-image-oracle-6.14Upgrade linux-image-oem-24.04bUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-fipsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-6.8.0-1046-nvidia-lowlatencyUpgrade linux-image-6.8.0-1046-nvidia-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-azure-6.14Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-6.14.0-1015-aws-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-virtualUpgrade linux-image-6.8.0-100-lowlatency-64kUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-ibm-6.8Upgrade linux-image-gkeUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.8.0-1047-gcp-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1043-gke-64kUpgrade linux-image-6.14.0-1015-oracle-64kUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1046-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