CVE-2026-64429 in Linuxinfo

Zusammenfassung

von VulDB • 26.07.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

gpio: eic-sprd: Verwendung von raw_spinlock_t im irq-Startpfad

sprd_eic_irq_unmask() aktiviert den GPIO-IRQ und aktualisiert anschließend den Controller-Zustand über sprd_eic_update(), wobei es die Sperre sprd_eic->lock mit spin_lock_irqsave() sichert. Der Callback kann während der Einrichtung eines angeforderten IRQs von irq_startup() aus aufgerufen werden. Dieser Pfad ist nicht schlafbar (nicht blockierend), aber unter PREEMPT_RT wird ein regulärer spinlock_t zu einer schlafenden Sperre.

Dieses Problem wurde durch unser statisches Analyse-Tool gefunden und anschließend manuell gegen den aktuellen Tree überprüft.

Das PoC-Skript, das die Anforderung von request_threaded_irq() -> __setup_irq() -> irq_startup() -> sprd_eic_irq_unmask() -> sprd_eic_update() beibehielt, nutzte die ursprüngliche Kante spin_lock_irqsave(&sprd_eic->lock). Lockdep meldete:

BUG: sleeping function called from invalid context hardirqs last disabled at ... __setup_irq.constprop.0 ... [vuln_msv]
sprd_rt_spin_lock_irqsave+0x1c/0x30 [vuln_msv]
sprd_eic_update.constprop.0+0x48/0x90 [vuln_msv]
sprd_eic_irq_unmask.constprop.0+0x35/0x50 [vuln_msv]
__setup_irq.constprop.0+0xd/0x30 [vuln_msv]

Die Sperre des Spreadtrum-EIC-Controllers wurde in raw_spinlock_t konvertiert. Der gesperrte Abschnitt serialisiert nur MMIO-Registeraktualisierungen und enthält keine schlafbaren Operationen, daher ist die Beibehaltung als nicht-schlafende Sperre für die irqchip-Callbacks angemessen.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Zuständig

Linux

Reservieren

19.07.2026

Veröffentlichung

25.07.2026

Moderieren

akzeptiert

Eintrag

VDB-383200

CPE

bereit

EPSS

0.00177

KEV

nein

Aktivitäten

very low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!