CVE-2026-90410 in Linuxinfo

Zusammenfassung

von VulDB • 18.09.2026

Im Linux-Kernel wurde die folgende Schwachstelle behoben:

spi: davinci: Wechsel zu verwalteter Controller-Allokation

Der Controller wird mit der nicht-verwalteten Funktion spi_alloc_host() alloziert, während der Interrupt mit devm_request_threaded_irq() registriert wird. Beim Entfernen (Remove) ruft spi_bitbang_stop() nur die Registrierung des Controllers auf; das nachfolgende spi_controller_put() gibt den Controller zusammen mit seinen eingebetteten davinci_spi-devdata frei, welche als dev_id für den IRQ-Handler dienen. Die Freigabeaktion von devm_request_threaded_irq() (free_irq()), die den Handler leert, wird erst ausgeführt, nachdem .remove() zurückgegeben hat. Ein später oder verzögerter Interrupt kann daher davinci_spi_irq() erreichen und auf bereits freigegebenen Speicher zugreifen.

Es wird zu devm_spi_alloc_host() gewechselt, sodass die LIFO-Reihenfolge der devres den Controller erst freigibt, nachdem free_irq() den Handler geleert hat, und das nun überflüssige spi_controller_put() aus .remove() entfernt. Der Fehlerpfad bei der Initialisierung (Probe) wird auf direkte Rückgaben vereinfacht.

Die Uhr (Clock) wird mit devm_clk_get_enabled() abgerufen, welches nach dem IRQ registriert wird und daher vor diesem durch die LIFO-Reihenfolge der devres freigegeben wird. Der Interrupt wird explizit mit devm_free_irq() geleert, bevor der Controller deaktiviert wird, damit ein späterer Interrupt nicht auf Register eines clocks-gated (taktgeblockten) Controllers zugreifen kann.

Dieses Problem wurde durch ein internes statisches Analyse-Tool gefunden.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Zuständig

Linux

Reservieren

11.09.2026

Veröffentlichung

17.09.2026

Moderieren

akzeptiert

Eintrag

VDB-406962

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!