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

gpio: zynq: fix runtime PM leak on request error path

pm_runtime_get_sync() leaves the usage counter incremented even when it
fails, and zynq_gpio_request() returns the error without dropping it.

gpiolib does not call ->free() when ->request() fails, so zynq_gpio_free(),
which holds the only matching pm_runtime_put(), never runs. The reference
is leaked and the controller can no longer runtime-suspend, so its clock
stays enabled.

Switch to pm_runtime_resume_and_get(), which only increments the usage
counter on success.
Published: 2026-10-18
Score: n/a
EPSS: n/a
KEV: No
Impact: Resource leak that prevents runtime PM suspension, causing sustained power consumption
Action: Immediate Patch
AI Analysis

Impact

When a Zynq GPIO request fails, the runtime power‑management function increments its usage counter but never decrements it, leaking a reference. Because the driver does not free this reference, the hardware clock cannot be suspended and stays enabled, leading to unnecessary power drain and accelerated battery depletion. The flaw does not directly grant code execution or a denial of service, but it undermines energy efficiency and reliability of devices that rely on runtime power management.

Affected Systems

All Linux kernel builds that include the Zynq GPIO driver are affected. The issue is inherent to the driver code shipped by the Linux kernel, so every Zynq platform that runs an unpatched kernel is vulnerable. No specific sub‑versions are listed, so the entire kernel tree containing the driver is at risk until the fix is applied.

Risk and Exploitability

The CVSS score is not supplied, and no EPSS data is available, so the exploitation probability cannot be quantified. The kernel is not in the CISA KEV catalog. The attack vector is an internal failure of the driver’s runtime‑PM call; an attacker can only trigger the leak by forcing failed GPIO requests, which is unlikely in normal operation. Despite the low likelihood of direct attack, the persistent power‑management leak is considered a medium risk because it undermines energy efficiency and could impact battery‑operated embedded systems.

Generated by OpenCVE AI on October 19, 2026 at 00:01 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version that contains the commit switching from pm_runtime_get_sync() to pm_runtime_resume_and_get(), thereby preventing the runtime‑PM counter leak.
  • Rebuild or reinstall the kernel ensuring that commit 25c08be2a5e7715f19a6e02bbe9b0e5f01c77aac (or later) is present in the Zynq GPIO driver source.
  • If a kernel upgrade is not immediately feasible, temporarily disable runtime power management for the Zynq GPIO controller by setting the appropriate sysfs option or adjusting the device tree so that the driver does not attempt to suspend; this mitigates the clock leak until a patch is applied.

Generated by OpenCVE AI on October 19, 2026 at 00:01 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 19 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-762
CWE-795

Sun, 18 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: gpio: zynq: fix runtime PM leak on request error path pm_runtime_get_sync() leaves the usage counter incremented even when it fails, and zynq_gpio_request() returns the error without dropping it. gpiolib does not call ->free() when ->request() fails, so zynq_gpio_free(), which holds the only matching pm_runtime_put(), never runs. The reference is leaked and the controller can no longer runtime-suspend, so its clock stays enabled. Switch to pm_runtime_resume_and_get(), which only increments the usage counter on success.
Title gpio: zynq: fix runtime PM leak on request error path
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-10-18T15:17:45.684Z

Reserved: 2026-09-25T10:25:14.355Z

Link: CVE-2026-98527

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:04.183

Modified: 2026-10-18T16:17:04.183

Link: CVE-2026-98527

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-19T00:15:14Z

Weaknesses
  • CWE-762

    Mismatched Memory Management Routines

  • CWE-795

    Only Filtering Special Elements at a Specified Location