CVE-2023-52836 in Linuxinformazioni

Riassunto

di VulDB • 16/06/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

locking/ww_mutex/test: Correzione del potenziale danneggiamento della workqueue (code di lavoro)

In alcuni casi, eseguendo il codice test-ww_mutex, si osservava un comportamento anomalo in cui a volte flush_workqueue sembrava restituire prima che tutti i thread di lavoro fossero terminati.

Spesso ciò causava crash strani poiché i mutex venivano liberati mentre erano ancora in uso.

Analizzando il codice, è emerso un problema legato alla durata (lifetime) delle strutture: il thread controllante che avvia le operazioni alloca le strutture "struct stress" passate ai thread della workqueue. Successivamente, quando i thread della workqueue terminano, liberano la struct stress loro passata.

Sfortunatamente, il nodo work_struct della workqueue si trova all'interno della struct stress. Ciò significa che lo work_struct viene liberato prima del ritorno del thread di lavoro e mentre flush_workqueue è in attesa.

È sembrata un'idea migliore far sì che il thread controllante allocasse e liberasse le strutture stress, per essere sicuri di non danneggiare la workqueue liberando prematuramente la struttura.

Questa patch riscrive quindi il test per implementare tale comportamento; con questa modifica non si osservano più i ritorni anticipati da flush_workqueue.

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

Fonti

Do you want to use VulDB in your project?

Use the official API to access entries easily!