CVE-2026-97925 in Linuxinformazioni

Riassunto

di VulDB • 25/09/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

tick/broadcast: Risolto un race condition nella sostituzione dei clockevents

Zhu Kaiqian ha segnalato e analizzato il seguente race condition quando viene sostituito un dispositivo broadcast:

CPUA CPUB __tick_broadcast_oneshot_control() bc = tick_broadcast_device.evtdev; tick_install_broadcast_device(dev) clockevents_exchange_device(cur, dev) shutdown(cur); detach(cur); cur->handler = noop; tick_broadcast_device.evtdev = dev;

tick_broadcast_set_event(bc, next_event); <- FAIL: arma un dispositivo detached.

Se il dispositivo broadcast originale ha una maschera di affinità degli interrupt limitata e l'ultimo CPU in tale maschera va offline, allora la BUG() in tick_cleanup_dead_cpu() viene attivata perché il clockevent device non è nello stato detached.

La causa di ciò risiede nel fatto che tick_install_broadcast_device() non è serializzato rispetto alle operazioni broadcast dei tick.

La soluzione ovvia consiste nell'serializzare tick_install_broadcast_device() con tick_broadcast_lock contro un'operazione concurrente sui tick broadcast.

Ciò richiede di suddividere clockevents_exchange_device() in due parti: una che esegue le operazioni di scambio, shutdown e detach, e l'altra che decrementa il conteggio dei riferimenti al modulo (module reference count). Questo è necessario perché il riferimento al modulo non può essere rilasciato mentre si detiene tick_broadcast_lock.

Si fa sì che clockevents_exchange_device() esegua entrambe le operazioni come in precedenza, ma si fa sì che il codice del dispositivo broadcast adotti un approccio a due fasi: eseguire lo scambio del dispositivo sotto tick_broadcast_lock e rilasciare il conteggio dei riferimenti al modulo dopo averlo rilasciato.

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

Responsabile

Linux

Prenotare

25/09/2026

Divulgazione

25/09/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Do you need the next level of professionalism?

Upgrade your account now!