CVE-2025-37974: s390/pci: Fix missing check for zpci_create_device() error return
In the Linux kernel, the following vulnerability has been resolved:
s390/pci: Fix missing check for zpci_create_device() error return
The zpci_create_device() function returns an error pointer that needs to
be checked before dereferencing it as a struct zpci_dev pointer. Add the
missing check in __clp_add() where it was missed when adding the
scan_list in the fixed commit. Simply not adding the device to the scan
list results in the previous behavior.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel bug in IBM s390 PCI handling. A failed device-creation call could be treated as a valid device pointer. The sources do not state the business impact, CVSS score, or confirmed exploitation, so urgency depends on whether you run affected s390 Linux systems with PCI support.
Executive priority
Prioritize verification if the organization runs IBM Z/s390 Linux. For most environments, this is not an enterprise-wide emergency based on available evidence, but affected platforms should receive normal kernel maintenance promptly.
Technical view
The issue is a missing error-pointer check after zpci_create_device() in __clp_add(). The fix checks the return before dereferencing it as struct zpci_dev and avoids adding failed devices to the scan list, preserving prior behavior. The source bundle names Linux kernel affected versions and three upstream stable commits.
Likely exposure
Exposure appears limited to Linux kernel deployments on s390 architecture using the affected s390 PCI path. Organizations without IBM Z/s390 Linux workloads are unlikely to be exposed based on the provided sources. Distribution backports may change apparent version exposure.
Exploitation context
The bundle does not report active exploitation, public exploit availability, KEV listing, CVSS, or CWE. Treat this as a kernel reliability and availability concern until vendor advisories clarify impact and reachable trigger conditions.
Researcher notes
Evidence is sparse: no CVSS, CWE, exploit status, or explicit impact is provided. Analysis should focus on the s390 PCI add path, the error-pointer dereference risk, and whether local hardware or management actions can reach __clp_add().
Mitigation direction
Update affected Linux kernels using vendor packages that include the referenced stable fixes.
Prioritize IBM Z/s390 Linux hosts with PCI device support.
Track distribution advisories for CVE-2025-37974 and backported fix versions.
If patching is delayed, consult vendor guidance for supported operational mitigations.
Validation and detection
Inventory Linux hosts by architecture and kernel version.
Identify s390 systems using PCI or zPCI functionality.
Confirm vendor kernel packages reference CVE-2025-37974 or the stable fix commits.
For source builds, verify __clp_add() checks zpci_create_device() error returns.
Document non-s390 systems as not exposed based on current evidence.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-37974 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
4Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
May 20, 2025, 16:47 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.