CVE-2026-23129
Medium · 5.5CVSS
5.5
EPSS
0.1%
Published
Feb 14, 2026
CISA due date
—
Cloudanix analysis
A flaw in the Linux kernel's handling of certain hardware timing registrations could let the same component register more than once, leading to warnings or instability when components later unregister.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The dpll registration helpers silently accepted duplicate pin registrations with identical parameters, incrementing an internal refcount on subsequent calls while allocating a single dpll_pin_registration object; the first unregistration freed the object and later unregistrations triggered kernel warnings.
Why it matters to the business
Systems using the affected dpll subsystem may experience unexpected kernel warnings or instability when drivers or user-space components attempt repeated registrations, increasing operational overhead for kernel log monitoring and potential service restarts on affected Linux deployments.
How an attack unfolds
An attacker with local access loads or triggers a driver or application that calls the registration helpers multiple times with the same pin, ops, priv, and cookie; the kernel accepts the duplicates until unregistration occurs, at which point warnings are emitted.
How to fix it
Update the Linux kernel package to the fixed version that enforces an -EEXIST return on duplicate registration attempts; apply the update through the distribution's package manager and reboot if required.
How to confirm the fix worked
Confirm the installed kernel version matches or exceeds the fixed release; attempt duplicate registration in a test environment and verify that -EEXIST is returned instead of success; monitor kernel logs for absence of the previous warning pattern after unregistration.
Typical attack path
- Obtain local access or code execution on the target system
- Identify or load a component that interacts with dpll pin registration
- Invoke duplicate registration calls with matching parameters
- Trigger unregistration to produce kernel warnings
How to detect it
Search kernel logs for dpll-related registration warnings or WARN_ON patterns triggered during module unload or pin unregistration; inspect source or traces of drivers calling dpll_xa_ref_pin_add or similar helpers for repeated calls with identical arguments.
What your security team should do
- Prioritize patching affected kernel packages on all systems exposing dpll interfaces
- Review driver and application code for repeated registration calls before deploying updates
- Enable kernel warning logging and alerting to detect any residual instances prior to patching
The record
In the Linux kernel, the following vulnerability has been resolved: dpll: Prevent duplicate registrations Modify the internal registration helpers dpll_xa_ref_{dpll,pin}_add() to reject duplicate registration attempts. Previously, if a caller attempted to register the same pin multiple times (with the same ops, priv, and cookie) on the same device, the core silently increments the reference count and return success. This behavior is incorrect because if the caller makes these duplicate registrations then for the first one dpll_pin_registration is allocated and for others the associated dpll_pin_ref.refcount is incremented. During the first unregistration the associated dpll_pin_registration is freed and for others WARN is fired. Fix this by updating the logic to return `-EEXIST` if a matching registration is found to enforce a strict "register once" policy.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Linux | Kernel | 6.7.0 | 6.12.68 |
| openSUSE:Leap 16.0 | dtb-aarch64 | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-64kb | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-azure | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-default | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-default-base | 0 | 6.12.0-160000.27.1.160000.2.8 |
| openSUSE:Leap 16.0 | kernel-docs | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-kvmsmall | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-obs-build | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-obs-qa | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-rt | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-source | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-syms | 0 | 6.12.0-160000.27.1 |
| openSUSE:Leap 16.0 | kernel-zfcpdump | 0 | 6.12.0-160000.27.1 |
Related vulnerabilities
- CVE-2026-23226 In the Linux kernel, the following vulnerability has been resolved: ksmbd: add chann_lock… Also affects Kernel
- CVE-2026-23225 In the Linux kernel, the following vulnerability has been resolved: sched/mmcid: Don't… Also affects Kernel
- CVE-2026-23230 In the Linux kernel, the following vulnerability has been resolved: smb: client: split… Also affects Kernel
- CVE-2026-23224 In the Linux kernel, the following vulnerability has been resolved: erofs: fix UAF issue… Also affects Kernel
- CVE-2026-23227 In the Linux kernel, the following vulnerability has been resolved: drm/exynos: vidi: use… Also affects Kernel
- CVE-2026-23223 In the Linux kernel, the following vulnerability has been resolved: xfs: fix UAF in… Also affects Kernel
- CVE-2026-23228 In the Linux kernel, the following vulnerability has been resolved: smb: server: fix leak… Also affects Kernel
- CVE-2026-23229 In the Linux kernel, the following vulnerability has been resolved: crypto: virtio - Add… Also affects Kernel