CVE-2026-80562 in Linux정보

요약

\~에 의해 VulDB • 2026. 08. 26.

리눅스 커널에서 다음 취약점이 해결되었습니다:

gpio: ml-ioh: 레지스터 잠금을 위해 raw_spinlock_t 사용

ioh_irq_type()는 irq_chip의 .irq_set_type 콜백으로 등록되며, spin_lock_irqsave()를 사용하여 chip->spinlock을 획득합니다. 이 콜백은 __setup_irq() -> __irq_set_trigger() -> chip->irq_set_type() 경로를 통해 호출되는데, 이때 호출자는 desc->lock(즉, raw_spinlock_t)을 보유하고 있으며 하드 인터럽스가 비활성화되어 있습니다. 이러한 컨텍스트는 수면(sleepable)할 수 없으나, PREEMPT_RT 환경에서는 일반적인 spinlock_t가 rtmutex 기반의 수면 가능 잠금이므로 해당 위치에서 이를 획득하는 것은 잘못되었습니다. ioh_irq_enable() 및 ioh_irq_disable() 역시 .irq_enable/.irq_disable 콜백으로부터 동일한 잠금을 사용하며, 이들도 desc->lock이 보유된 상태로 호출됩니다.

레지스터 잠금을 raw_spinlock_t로 변환합니다. 동일한 잠금은 GPIO 방향/값 콜백과 서스펜드/리sume 레지스터 저장/복구를 직렬화하며, 이러한 임계 섹션은 짧은 시퀀스의 MMIO 레지스터 접근(ioread32()/iowrite32())만 수행합니다. .irq_set_type 콜백은 추가로 지원되지 않는 타입에 대해 dev_warn()을 출력합니다. 이들 중 수면 가능한 작업은 없으므로, 이 irqchip 콜백에서 해당 레지스터 잠금을 비수면(non-sleeping) 상태로 유지하는 것이 적절하며 GPIO 측의 잠금 계약(locking contract)도 변경되지 않습니다.

이 수정사항은 커밋 a02b8950d619("gpio: pch: use raw_spinlock_t for the register lock")과 동일한 것입니다. 이 드라이버는 gpio-pch와 동일한 구조를 공유합니다.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

책임이 있는

Linux

예약하다

2026. 08. 26.

모더레이션

수락

항목

VDB-395855

EPSS

0.00000

출처

Do you need the next level of professionalism?

Upgrade your account now!