In the Linux kernel, the following vulnerability has been resolved: iio: accel: kxsd9: fix runtime PM imbalance on…
Source GCVE Database
Not known to be exploited.
Data as of 10/25/2026, 04:40:13 UTC
No CVSS score from NVD or the CNA
- Exploitation
Not in CISA KEV, no exploitation reported
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 6% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
What to do
AI-suggested
A fix for this issue has been implemented in the Linux kernel. Users and administrators should update to the fixed kernel version once it is available. Since this is a kernel-level fix, applying the official kernel update is the recommended remediation. Patch status is not explicitly confirmed in the provided data; check the vendor or Linux kernel advisory for the exact fixed version and update instructions.
Description
In the Linux kernel, the following vulnerability has been resolved: iio: accel: kxsd9: fix runtime PM imbalance on write_raw() error kxsd9_write_raw() takes a runtime PM reference with pm_runtime_get_sync() but returns -EINVAL directly when a scale with a non-zero integer part is requested, skipping the matching pm_runtime_put_autosuspend(). This leaks a runtime PM usage-counter reference on every such write, after which the device can no longer autosuspend. Set the error code and fall through to the existing put instead of returning early.
Impact
The vulnerability causes a runtime PM usage-counter leak in the kxsd9 driver, which prevents the device from entering autosuspend mode after specific write_raw() errors. This could lead to increased power consumption due to the device remaining active longer than intended. There is no indication of direct security compromise or exploitation in the wild.
Summary
The Linux kernel's kxsd9 accelerometer driver had a flaw in the write_raw() function where it acquired a runtime PM reference with pm_runtime_get_sync() but returned -EINVAL early on certain scale requests without calling pm_runtime_put_autosuspend(), causing a runtime PM usage-counter leak. This prevented the device from autosuspending after such errors. The fix involves setting the error code and falling through to the existing put call to properly balance the PM reference count.
References
- nvd.nist.gov/vuln/detail/CVE-2026-64503 (opens in a new tab)
- git.kernel.org/stable/c/13a91e8631cfeb68e5b7fd6687f194f5a86e83fe (opens in a new tab)
- git.kernel.org/stable/c/191fcfeb729ededd8dd2a999c6bf351ddfa0cec7 (opens in a new tab)
- git.kernel.org/stable/c/223703d6e8bed50b6a0b47e160877909518d94b9 (opens in a new tab)
- git.kernel.org/stable/c/36154171385a8a2444a4b3c6eaa0c5294cb02478 (opens in a new tab)
- git.kernel.org/stable/c/44a5fd874bb6873bdaec59f722c1d57832fbc9df (opens in a new tab)
- git.kernel.org/stable/c/6293211d142605bec435229ef0aa3668b8964164 (opens in a new tab)
- git.kernel.org/stable/c/a93fd69c1ab0854ac4f5b8439c26dfadb25dfd20 (opens in a new tab)
- git.kernel.org/stable/c/eeece4a85ece6f3837c75ef26a9b2bf5a1d0fcfc (opens in a new tab)