Description
In the Linux kernel, the following vulnerability has been resolved:

pds_core: fix error handling in pdsc_devcmd_wait

Fix two cases where pdsc_devcmd_wait() returns stale success from
the completion register instead of an error:

1. FW crash: If firmware stops running, the wait loop breaks early with
running=false. The condition "if ((!done || timeout) && running)" is
false, so error handling is bypassed and stale status is returned.
Check !running first and return -ENXIO.

2. Timeout: If a command times out, err is set to -ETIMEDOUT but then
overwritten by pdsc_err_to_errno(status) which reads stale status.
Return -ETIMEDOUT immediately after cleaning up.

Both errors now propagate to pdsc_devcmd_locked() which queues
health_work for recovery.
Published: 2026-07-19
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel bug in pds_core causes the wait function pdsc_devcmd_wait() to return a stale success status instead of proper error codes in two scenarios: when firmware stops unexpectedly and when a command times out. This incorrect success status prevents the error handling in pdsc_devcmd_locked() from being executed, meaning that kernel health recovery work is not queued. The result can be a firmware crash that is not detected or a loss of recovery for timed‑out commands, reducing system reliability and potentially allowing repeated failures to accumulate. The vulnerability does not provide a direct code execution path, but it can lead to service disruption and loss of system stability.

Affected Systems

All Linux kernel builds are affected due to the nature of the patch applied to pds_core. Specific kernel versions that contain the pre‑patch code are not listed in the data, so any system running a kernel version prior to the commit that introduced the fix may be vulnerable. No vendor or product specificity is provided beyond the general Linux kernel.

Risk and Exploitability

The CVSS score is 7.5, indicating a moderate to high impact. The EPSS score is reported as < 1%, suggesting a low probability of exploitation in the wild. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is local, requiring access to the hardware or the ability to trigger firmware faults; external exploitation is not directly supported by the description. Due to the low likelihood of exploitation and the absence of a known public exploit, the overall risk is moderate, but the potential for loss of service remains a concern.

Generated by OpenCVE AI on July 30, 2026 at 20:13 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to the latest stable release that includes the patch for pds_core; the commit that fixes this bug can be identified by the commit hashes in the advisory.
  • If a kernel update is not immediately possible, monitor kernel logs for signs of firmware crashes or command timeouts and manually trigger recovery procedures as necessary.
  • Ensure that firmware on devices using the kernel is up to date and correctly reports status to avoid stale success states.
  • Apply any vendor‑specific firmware updates that address similar error handling issues in the same subsystem.

Generated by OpenCVE AI on July 30, 2026 at 20:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Tue, 21 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-393
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 20 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Sun, 19 Jul 2026 16:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: pds_core: fix error handling in pdsc_devcmd_wait Fix two cases where pdsc_devcmd_wait() returns stale success from the completion register instead of an error: 1. FW crash: If firmware stops running, the wait loop breaks early with running=false. The condition "if ((!done || timeout) && running)" is false, so error handling is bypassed and stale status is returned. Check !running first and return -ENXIO. 2. Timeout: If a command times out, err is set to -ETIMEDOUT but then overwritten by pdsc_err_to_errno(status) which reads stale status. Return -ETIMEDOUT immediately after cleaning up. Both errors now propagate to pdsc_devcmd_locked() which queues health_work for recovery.
Title pds_core: fix error handling in pdsc_devcmd_wait
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-05T12:39:43.750Z

Reserved: 2026-07-19T07:54:57.037Z

Link: CVE-2026-64148

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64148 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-07-30T20:15:05Z

Weaknesses
  • CWE-393

    Return of Wrong Status Code