Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-74331— firmware_loader: Fix recursive lock in device_cache_fw_images()

AI Predicted 4.4 Difficulty: Theoretical EPSS 0.19% · P9

Possible ATT&CK Techniques 1AI

T1499 · Endpoint Denial of Service

Affected Version Matrix 18

VendorProductVersion RangeStatus
LinuxLinuxac39b3ea73aacde876d1d5ee1ca3e2719f771482< 806cb8fabfde7f830da5ae87777d52fdf50c4774affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< 7865a1bfd20d10c03b083a5fc392d907ca5099b3affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< 490b0385e4cfac691f7b18dde821c13e77b4770baffected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< 38149b57427c736c08d9aa4c7b87deacd53e9e63affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< a5b2a68a391b05d54552f13548a72a46c65006f7affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< f25d6e4ec4c257030592bd671f113cf9584c52f0affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< c0f2dedd41fe14dbe076c1672214802fb42cd8c8affected
ac39b3ea73aacde876d1d5ee1ca3e2719f771482< d3ec78f8f8d48a04a9fac38d47275c34645e5103affected
… +10 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2026-74331

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
firmware_loader: Fix recursive lock in device_cache_fw_images()
Source: CVE Program / CVE List V5
Vulnerability 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.
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会开源的一个操作系统内核。 Linux kernel存在安全漏洞,该漏洞源于firmware_loader的device_cache_fw_images()函数在持有fw_lock时,因内存分配失败而同步执行异步工作并再次获取锁,可能导致递归锁定死锁。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux ac39b3ea73aacde876d1d5ee1ca3e2719f771482 ~ 806cb8fabfde7f830da5ae87777d52fdf50c4774 -
LinuxLinux 3.7 -

II. Public POCs for CVE-2026-74331

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-74331

登录查看更多情报信息。

Patches & Fixes for CVE-2026-74331 (8)

Same Patch Batch · Linux · 2026-08-15 · 845 CVEs total

CVE-2026-7428010.0 CRITICALcrypto: marvell/octeontx - fix DMA cleanup using wrong loop index
CVE-2026-7427910.0 CRITICALcrypto: cavium/cpt - fix DMA cleanup using wrong loop index
CVE-2026-7447510.0 CRITICALvxlan: use neigh_ha_snapshot() in route_shortcircuit()
CVE-2026-7240710.0 CRITICALgeneve: validate inner network offset in geneve_gro_complete()
CVE-2026-7240810.0 CRITICALgeneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint
CVE-2026-7430910.0 CRITICALvdpa/octeon_ep: fix IRQ-to-ring mapping in interrupt handler
CVE-2026-7242110.0 CRITICALipv4: fib: Don't ignore error route in local/main tables.
CVE-2026-724939.9 CRITICALnet: serialize netif_running() check in enqueue_to_backlog()
CVE-2026-722489.8 CRITICALnetfilter: flowtable: support IPIP tunnel with direct xmit
CVE-2026-722519.8 CRITICALnetfilter: nf_nat_sip: reload possible stale data pointer
CVE-2026-724779.8 CRITICALfs/ntfs3: call _ntfs_bad_inode() when failing to rename
CVE-2026-723819.8 CRITICALksmbd: fix use-after-free of fp->owner.name in durable handle owner check
CVE-2026-724739.8 CRITICALxprtrdma: Decouple req recycling from RPC completion
CVE-2026-724729.8 CRITICALnfs: use nfsi->rwsem to protect traversal of the file lock list
CVE-2026-744069.8 CRITICALvxlan: Fix potential null-ptr-deref in vxlan_gro_prepare_receive().
CVE-2026-721399.8 CRITICALtcp: defer md5sig_info kfree past RCU grace period in tcp_connect
CVE-2026-744019.8 CRITICALdlm: fix add msg handle in send_queue ordered
CVE-2026-721379.8 CRITICALxfrm: nat_keepalive: avoid double free on send error
CVE-2026-743769.8 CRITICALmd/raid10: reset read_slot when reusing r10bio for discard
CVE-2026-721309.8 CRITICALnvmet-auth: reject short AUTH_RECEIVE buffers

Showing top 20 of 845 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-74331

No comments yet


Leave a comment