CVE-2026-90208: clocksource/drivers/samsung_pwm: Switch to raw_spinlock_t type
In the Linux kernel, the following vulnerability has been resolved:
clocksource/drivers/samsungpwm: Switch to rawspinlockt type
Samsung PWM timer might be used as a clock source on some legacy systems. When PREEMPTRT is enabled on ARM, regular spinlock is converted to a sleeping lock (mutex-based), which must not be used in atomic context such as hard interrupt handlers. Switch the samsungpwmlock to the rawspinlock, which remains a true non-sleeping spinlock even under PREEMPTRT.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Change samsung_pwm_lock to raw_spinlock_t when PREEMPT_RT is enabled, so it remains a true non-sleeping spinlock suitable for atomic contexts.
Linux kernel clocksource/drivers/samsung_pwm: samsung_pwm_lock = raw_spinlock_t
Event History
Frequently Asked Questions
Which systems are exposed to this issue?
Systems using the Linux kernel on ARM with PREEMPT_RT enabled are exposed when the Samsung PWM timer is used as a clock source, particularly on legacy systems where that timer configuration is present.
What condition triggers the vulnerability?
The issue occurs when code uses the Samsung PWM lock from an atomic context such as a hard interrupt handler. With PREEMPT_RT enabled, a regular spinlock can become a mutex-based sleeping lock, which is unsafe in that context.
Is a default kernel configuration necessarily affected?
No. The described condition requires PREEMPT_RT on ARM and use of the Samsung PWM timer as a clock source; the data does not indicate that these conditions are enabled by default.
What is the relevant remediation?
Apply the kernel change that converts samsung_pwm_lock from a regular spinlock to raw_spinlock_t. A raw spinlock remains non-sleeping under PREEMPT_RT and is suitable for hard interrupt contexts.