All vulnerabilities
CVE-2026-98527

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

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.22%Chance of exploitation activity in the next 30 days, higher than 11% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in60a76cdd92e25f576dc58d756a565760dde1f7a1Also 25c08be2a5e7715f19a6e02bbe9b0e5f01c77aac, 6e05f1c614a57a5d4c364dd12e20c6fd012f9d3e and 2 moreCVE List
Published18 Oct 2026Updated 19 Oct 2026CVE List

What fixes it

  • 60a76cdd92e25f576dc58d756a565760dde1f7a1LinuxCVE List
  • 25c08be2a5e7715f19a6e02bbe9b0e5f01c77aacLinuxCVE List
  • 6e05f1c614a57a5d4c364dd12e20c6fd012f9d3eLinuxCVE List
  • 58a417a19d80141fff3abe6004e2e47285506e73LinuxCVE List
  • 6e20dabffbcd7b222d8e7bb85a7d8e8325df7699LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

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.

Text from CVE List

Affected versions 18

  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before e380fba02908b809f5bbef371259003cf5887bb4CVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before a3e9b7f7c9558f8c9592f8f817557bff98707bb3CVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before 60a76cdd92e25f576dc58d756a565760dde1f7a1CVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before 25c08be2a5e7715f19a6e02bbe9b0e5f01c77aacCVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before 6e05f1c614a57a5d4c364dd12e20c6fd012f9d3eCVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before 58a417a19d80141fff3abe6004e2e47285506e73CVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before 6e20dabffbcd7b222d8e7bb85a7d8e8325df7699CVE List
  • Linuxaffected: 3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 before e9438ab5328a177c9c0e5df87eb92a7162841e98CVE List
  • Linuxaffected: 3.17CVE List
  • Linuxunaffected: all versions before 3.17CVE List
  • Linuxunaffected: 5.10.271 through 5.10.*CVE List
  • Linuxunaffected: 5.15.222 through 5.15.*CVE List
  • Linuxunaffected: 6.1.189 through 6.1.*CVE List
  • Linuxunaffected: 6.6.158 through 6.6.*CVE List
  • Linuxunaffected: 6.12.112 through 6.12.*CVE List
  • Linuxunaffected: 6.18.55 through 6.18.*CVE List
  • Linuxunaffected: 7.2.9 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 8