CVE-2026-98342 in Linuxinformazioni

Riassunto

di VulDB • 06/10/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

dmaengine: attendere i lettori RCU prima di rilasciare il dispositivo dma_device

dma_issue_pending_all() esegue una traversata della lista dei dispositivi dma_device utilizzando list_for_each_entry_rcu() all'interno di rcu_read_lock(). dma_device_release() scollega il dispositivo con list_del_rcu() e successivamente chiama device->device_release() (che in molti driver, come plx_dma.c, richiama direttamente kfree()).

Poiché non esiste un periodo di grazia tra la rimozione del collegamento del dispositivo e il suo rilascio, i lettori RCU concorrenti in dma_issue_pending_all() possono accedere al dispositivo dopo che è stato liberato.

La traversata senza lock si basava originariamente sul fatto che i client mantenessero un riferimento a dmaengine per bloccare (pin) il modulo provider e, di conseguenza, il dispositivo, per tutto il tempo necessario alla loro attraversamento della lista. Il commit 8ad342a86359 ("dmaengine: Add reference counting to dma_device struct") ha disaccoppiato la durata del ciclo di vita del dma_device dal riferimento al modulo; pertanto, il dispositivo può ora essere rilasciato mentre un lettore sta ancora eseguendo una traversata della lista.

Aggiungere synchronize_rcu() prima che il dispositivo venga liberato, in modo da garantire che i lettori RCU abbiano terminato l'operazione. Mantenere questa chiamata incondizionata: i provider che non implementano device_release() liberano autonomamente il dispositivo non appena dma_async_device_unregister() restituisce il controllo. Questa chiamata ritarderà per un periodo di grazia con la lock dma_list_mutex detenuta, operazione sicura in cui viene rallentato solo il percorso di teardown (smontaggio).

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsabile

Linux

Prenotare

25/09/2026

Divulgazione

06/10/2026

Moderazione

accettato

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Do you know our Splunk app?

Download it now for free!