CVE-2026-74331
Received Received - Intake

BaseFortify

Vulnerability report for CVE-2026-74331, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-15

Last updated on: 2026-08-15

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: firmware_loader: Fix recursive lock in device_cache_fw_images() A recursive locking deadlock can occur in the firmware loader's power management notification handler. During system suspend or hibernation preparation, fw_pm_notify() calls device_cache_fw_images(). This function acquires fw_lock to set the firmware cache state to FW_LOADER_START_CACHE and then iterates over all devices using dpm_for_each_dev() while still holding the lock. For each device, dev_cache_fw_image() schedules asynchronous work to cache the firmware. If memory allocation for the async work entry fails (e.g., in out-of-memory conditions), async_schedule_node_domain() falls back to executing the work function synchronously in the current thread. The synchronous execution path (__async_dev_cache_fw_image() -> cache_firmware() -> request_firmware() -> assign_fw()) attempts to acquire fw_lock again. Since the current thread already holds fw_lock, this results in a recursive locking deadlock. Fix this by releasing fw_lock immediately after updating the cache state and before calling dpm_for_each_dev(). The lock is only needed to protect the state update. Concurrent firmware requests will correctly see the FW_LOADER_START_CACHE state and use the piggyback mechanism, which is independently protected by its own fwc->name_lock.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-15
Last Modified
2026-08-15
Generated
2026-08-15
AI Q&A
2026-08-15
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a recursive locking deadlock in the Linux kernel's firmware loader. During system suspend or hibernation, a function called fw_pm_notify() triggers device_cache_fw_images(), which holds a lock while iterating over devices. If memory allocation fails during this process, the system tries to execute firmware caching work synchronously, leading to a deadlock when it attempts to reacquire the same lock.

Detection Guidance

This vulnerability is specific to the Linux kernel's firmware loader and does not have a direct network detection method. It manifests as a system hang during suspend or hibernation. Monitor kernel logs for hangs or deadlocks during power state transitions using dmesg | grep -i 'fw_pm_notify\|device_cache_fw_images\|recursive lock'.

Impact Analysis

This vulnerability can cause system hangs or crashes during suspend or hibernation processes. It may lead to unresponsive systems, data loss, or require a hard reboot to recover, potentially disrupting normal operations.

Mitigation Strategies

Apply the kernel patch that fixes the recursive lock issue in firmware_loader. Update to a patched kernel version where the fix is included. Avoid triggering suspend or hibernation until the patch is applied to prevent potential deadlocks.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-74331. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart