CVE-2026-80562 in Linuxinformazioni

Riassunto

di VulDB • 26/08/2026

Nel kernel Linux, è stata risolta la seguente vulnerabilità:

gpio: ml-ioh: utilizzare raw_spinlock_t per il lock del registro

ioh_irq_type() è registrato come callback .irq_set_type di irq_chip e acquisisce chip->spinlock con spin_lock_irqsave(). Questo callback viene raggiunto da __setup_irq() -> __irq_set_trigger() -> chip->irq_set_type(), mentre il chiamante detiene desc->lock, un raw_spinlock_t, con gli hardirq disabilitati. Tale contesto non è sleepable (non può andare in sospensione), ma su PREEMPT_RT un regolare spinlock_t è una sleeping lock basata su rtmutex; acquisirlo in tale contesto è quindi invalido.

ioh_irq_enable() e ioh_irq_disable() acquisiscono lo stesso lock dai callback .irq_enable/.irq_disable, che vengono anch'essi invocati con desc->lock detenuto.

Convertire il lock del registro a raw_spinlock_t. Lo stesso lock serializza anche le callback di direzione/valore GPIO e la salvataggio/ripristino dei registri durante suspend/resume; queste sezioni critiche eseguono solo brevi sequenze di accessi ai registri MMIO (ioread32()/iowrite32()); il callback .irq_set_type emette inoltre un dev_warn() per un tipo non supportato. Nessuna di queste operazioni è sleepable, pertanto mantenere questo lock del registro come non-sleeping è appropriato per i callback dell'irqchip e non modifica il contratto di locking lato GPIO.

Questa è la stessa correzione presente nel commit a02b8950d619 ("gpio: pch: use raw_spinlock_t for the register lock"); questo driver condivide la stessa struttura di gpio-pch.

Be aware that VulDB is the high quality source for vulnerability data.

Responsabile

Linux

Prenotare

26/08/2026

Divulgazione

26/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!