PatchSiren cyber security CVE debrief
CVE-2026-45926 Linux CVE debrief
A memory leak vulnerability exists in the Linux kernel's Rust PWM (Pulse Width Modulation) subsystem. When initializing a PWM chip using `pwmchip_alloc()`, the allocated device holds an initial reference that must be released on all error paths. If `__pinned_init()` fails during initialization, the error path returns without calling `pwmchip_put()`, resulting in a memory leak of the allocated `pwm_chip` structure. This vulnerability affects kernel versions where the Rust PWM bindings are present and has been resolved by ensuring proper cleanup on initialization failure.
- Vendor
- Linux
- Product
- Unknown
- CVSS
- MEDIUM 5.5
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-27
- Original CVE updated
- 2026-06-25
- Advisory published
- 2026-05-27
- Advisory updated
- 2026-06-25
Who should care
Linux kernel maintainers, embedded systems developers using PWM functionality, organizations running custom kernel builds with Rust support, and security teams tracking kernel memory safety issues.
Technical summary
The vulnerability is located in the Rust bindings for the Linux kernel PWM subsystem. The `pwmchip_alloc()` function allocates a PWM chip structure with an initial reference count. The `__pinned_init()` function performs additional initialization. If this initialization fails, the original error path did not decrement the reference count via `pwmchip_put()`, causing the allocated memory to leak. The fix adds the missing `pwmchip_put()` call to the error path, ensuring proper resource cleanup regardless of initialization success or failure.
Defensive priority
medium
Recommended defensive actions
- Review and apply the referenced kernel commits to affected systems
- Verify Rust PWM subsystem is updated in custom kernel builds
- Monitor kernel stable releases for backported fixes
- Audit error handling paths in Rust kernel code for similar patterns
Evidence notes
The vulnerability description indicates this is a memory leak in error handling paths within the Rust PWM subsystem. The fix ensures that `pwmchip_put()` is called when `__pinned_init()` fails, properly releasing the reference obtained during `pwmchip_alloc()`. Two kernel commits are referenced as resolution sources.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-45926 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-45926
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-45926 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-45926
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/a2633dc243c35754a0c2270131d8a199c987c9bf
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/baa8b7097d9cc68ff85819cf683972a58c2ce32b
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.