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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < e380fba02908b809f5bbef371259003cf5887bb4affected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < a3e9b7f7c9558f8c9592f8f817557bff98707bb3affected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < 60a76cdd92e25f576dc58d756a565760dde1f7a1affected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < 25c08be2a5e7715f19a6e02bbe9b0e5f01c77aacaffected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < 6e05f1c614a57a5d4c364dd12e20c6fd012f9d3eaffected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < 58a417a19d80141fff3abe6004e2e47285506e73affected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < 6e20dabffbcd7b222d8e7bb85a7d8e8325df7699affected3242ba117e9bd29eb748afd6f6fbfbd6dd7cfe52 to < e9438ab5328a177c9c0e5df87eb92a7162841e98affected
Linux Linux
Default version status: affected
3.17affected0 to < 3.17unaffected5.10.271 to ≤ 5.10.*unaffected5.15.222 to ≤ 5.15.*unaffected6.1.189 to ≤ 6.1.*unaffected6.6.158 to ≤ 6.6.*unaffected6.12.112 to ≤ 6.12.*unaffected6.18.55 to ≤ 6.18.*unaffected7.2.9 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/e380fba02908b809f5bbef371259003cf5887bb4 ↗
- https://git.kernel.org/stable/c/a3e9b7f7c9558f8c9592f8f817557bff98707bb3 ↗
- https://git.kernel.org/stable/c/60a76cdd92e25f576dc58d756a565760dde1f7a1 ↗
- https://git.kernel.org/stable/c/25c08be2a5e7715f19a6e02bbe9b0e5f01c77aac ↗
- https://git.kernel.org/stable/c/6e05f1c614a57a5d4c364dd12e20c6fd012f9d3e ↗
- https://git.kernel.org/stable/c/58a417a19d80141fff3abe6004e2e47285506e73 ↗
- https://git.kernel.org/stable/c/6e20dabffbcd7b222d8e7bb85a7d8e8325df7699 ↗
- https://git.kernel.org/stable/c/e9438ab5328a177c9c0e5df87eb92a7162841e98 ↗