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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2025-68310— s390/pci: Avoid deadlock between PCI error recovery and mlx5 crdump

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于死锁可能导致系统挂起。

AI Predicted 5.5 Difficulty: Moderate EPSS 0.19% · P8

Affected Version Matrix 12

VendorProduct Version RangeStatus
Linux Linux 4cdf2f4e24ff0d345fc36ef6d6aec059333a261e< d0df2503bc3c2be385ca2fd96585daad1870c7c5 affected
4cdf2f4e24ff0d345fc36ef6d6aec059333a261e< b63c061be622b17b495cbf78a6d5f2d4c3147f8e affected
4cdf2f4e24ff0d345fc36ef6d6aec059333a261e< 3591d56ea9bfd3e7fbbe70f749bdeed689d415f9 affected
4cdf2f4e24ff0d345fc36ef6d6aec059333a261e< 54f938d9f5693af8ed586a08db4af5d9da1f0f2d affected
4cdf2f4e24ff0d345fc36ef6d6aec059333a261e< 0fd20f65df6aa430454a0deed8f43efa91c54835 affected
5.16 affected
< 5.16 unaffected
6.1.159≤ 6.1.* unaffected
… +4 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2025-68310

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
s390/pci: Avoid deadlock between PCI error recovery and mlx5 crdump
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: s390/pci: Avoid deadlock between PCI error recovery and mlx5 crdump Do not block PCI config accesses through pci_cfg_access_lock() when executing the s390 variant of PCI error recovery: Acquire just device_lock() instead of pci_dev_lock() as powerpc's EEH and generig PCI AER processing do. During error recovery testing a pair of tasks was reported to be hung: mlx5_core 0000:00:00.1: mlx5_health_try_recover:338:(pid 5553): health recovery flow aborted, PCI reads still not working INFO: task kmcheck:72 blocked for more than 122 seconds. Not tainted 5.14.0-570.12.1.bringup7.el9.s390x #1 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:kmcheck state:D stack:0 pid:72 tgid:72 ppid:2 flags:0x00000000 Call Trace: [<000000065256f030>] __schedule+0x2a0/0x590 [<000000065256f356>] schedule+0x36/0xe0 [<000000065256f572>] schedule_preempt_disabled+0x22/0x30 [<0000000652570a94>] __mutex_lock.constprop.0+0x484/0x8a8 [<000003ff800673a4>] mlx5_unload_one+0x34/0x58 [mlx5_core] [<000003ff8006745c>] mlx5_pci_err_detected+0x94/0x140 [mlx5_core] [<0000000652556c5a>] zpci_event_attempt_error_recovery+0xf2/0x398 [<0000000651b9184a>] __zpci_event_error+0x23a/0x2c0 INFO: task kworker/u1664:6:1514 blocked for more than 122 seconds. Not tainted 5.14.0-570.12.1.bringup7.el9.s390x #1 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:kworker/u1664:6 state:D stack:0 pid:1514 tgid:1514 ppid:2 flags:0x00000000 Workqueue: mlx5_health0000:00:00.0 mlx5_fw_fatal_reporter_err_work [mlx5_core] Call Trace: [<000000065256f030>] __schedule+0x2a0/0x590 [<000000065256f356>] schedule+0x36/0xe0 [<0000000652172e28>] pci_wait_cfg+0x80/0xe8 [<0000000652172f94>] pci_cfg_access_lock+0x74/0x88 [<000003ff800916b6>] mlx5_vsc_gw_lock+0x36/0x178 [mlx5_core] [<000003ff80098824>] mlx5_crdump_collect+0x34/0x1c8 [mlx5_core] [<000003ff80074b62>] mlx5_fw_fatal_reporter_dump+0x6a/0xe8 [mlx5_core] [<0000000652512242>] devlink_health_do_dump.part.0+0x82/0x168 [<0000000652513212>] devlink_health_report+0x19a/0x230 [<000003ff80075a12>] mlx5_fw_fatal_reporter_err_work+0xba/0x1b0 [mlx5_core] No kernel log of the exact same error with an upstream kernel is available - but the very same deadlock situation can be constructed there, too: - task: kmcheck mlx5_unload_one() tries to acquire devlink lock while the PCI error recovery code has set pdev->block_cfg_access by way of pci_cfg_access_lock() - task: kworker mlx5_crdump_collect() tries to set block_cfg_access through pci_cfg_access_lock() while devlink_health_report() had acquired the devlink lock. A similar deadlock situation can be reproduced by requesting a crdump with > devlink health dump show pci/<BDF> reporter fw_fatal while PCI error recovery is executed on the same <BDF> physical function by mlx5_core's pci_error_handlers. On s390 this can be injected with > zpcictl --reset-fw <BDF> Tests with this patch failed to reproduce that second deadlock situation, the devlink command is rejected with "kernel answers: Permission denied" - and we get a kernel log message of: mlx5_core 1ed0:00:00.1: mlx5_crdump_collect:50:(pid 254382): crdump: failed to lock vsc gw err -5 because the config read of VSC_SEMAPHORE is rejected by the underlying hardware. Two prior attempts to address this issue have been discussed and ultimately rejected [see link], with the primary argument that s390's implementation of PCI error recovery is imposing restrictions that neither powerpc's EEH nor PCI AER handling need. Tests show that PCI error recovery on s390 is running to completion even without blocking access to PCI config space.
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所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于死锁可能导致系统挂起。
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

Vendor Product Affected Versions CPE Subscribe
Linux Linux 4cdf2f4e24ff0d345fc36ef6d6aec059333a261e ~ d0df2503bc3c2be385ca2fd96585daad1870c7c5 -
Linux Linux 5.16 -

II. Public POCs for CVE-2025-68310

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-68310

请登录查看更多情报信息。

Other References for CVE-2025-68310 (5)

Same Patch Batch · Linux · 2025-12-16 · 156 CVEs total

CVE-2025-68192 9.8 CRITICAL net: usb: qmi_wwan: initialize MAC header offset in qmimux_rx_fixup
CVE-2025-68301 9.8 CRITICAL net: atlantic: fix fragment overflow handling in RX path
CVE-2025-40350 9.8 CRITICAL net/mlx5e: RX, Fix generating skb from non-linear xdp_buff for striding RQ
CVE-2025-68284 9.8 CRITICAL libceph: prevent potential out-of-bounds writes in handle_auth_session_key()
CVE-2025-68285 9.8 CRITICAL libceph: fix potential use-after-free in have_mon_and_osd_map()
CVE-2025-68263 9.8 CRITICAL ksmbd: ipc: fix use-after-free in ipc_msg_send_request
CVE-2025-68315 9.8 CRITICAL f2fs: fix to detect potential corrupted nid in free_nid_list
CVE-2025-68255 8.8 HIGH staging: rtl8723bs: fix stack buffer overflow in OnAssocReq IE parsing
CVE-2025-68226 8.8 HIGH smb: client: fix incomplete backport in cfids_invalidation_worker()
CVE-2025-68304 8.8 HIGH Bluetooth: hci_core: lookup hci_conn on RX path on protocol side
CVE-2025-68256 8.8 HIGH staging: rtl8723bs: fix out-of-bounds read in rtw_get_ie() parser
CVE-2025-40362 8.8 HIGH ceph: fix multifs mds auth caps issue
CVE-2025-68314 8.8 HIGH drm/msm: make sure last_fence is always updated
CVE-2025-68250 8.2 HIGH hung_task: fix warnings caused by unaligned lock pointers
CVE-2025-68175 7.8 HIGH media: nxp: imx8-isi: Fix streaming cleanup on release
CVE-2025-68171 7.8 HIGH x86/fpu: Ensure XFD state on signal delivery
CVE-2025-68179 7.8 HIGH s390: Disable ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP
CVE-2025-68260 7.8 HIGH rust_binder: fix race condition on death_list
CVE-2025-68303 7.8 HIGH platform/x86: intel: punit_ipc: fix memory corruption
CVE-2025-68189 7.8 HIGH drm/msm: Fix GEM free for imported dma-bufs

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

IV. Related Vulnerabilities

V. Comments for CVE-2025-68310

No comments yet


Leave a comment