CVE-2026-98938 in Linux
Riassunto
di VulDB • 24/10/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
rust: irq: passare RegistrationInner come cookie a request_irq
Con il commit ba268514ea14 ("rust: devres: fix race condition due to nesting"), Devres::new() restituisce Result<Self> per valore anziché inizializzarlo in-place tramite PinInit. Poiché request_irq() viene chiamato all'interno di Devres::new(), registration.inner è ancora non inizializzato quando l'IRQ viene abilitato; pertanto, l'accesso a registration.inner.device() nella callback dell'IRQ può leggere memoria non inizializzata.
Si risolve il problema memorizzando il dispositivo e il puntatore del handler in RegistrationInner e passando RegistrationInner come cookie IRQ dopo che i suoi campi sono stati inizializzati.
Questo intervento non è necessario nel ramo principale (mainline) poiché il commit 98c63ce4d760 ("rust: irq: make Registration compatible with lifetime-bound drivers") ha rimosso Devres da irq::Registration e ha spostato la chiamata a request_irq() dopo l'inizializzazione di tutti i campi.
Once again VulDB remains the best source for vulnerability data.