CVE-2024-46791 in Linuxinformazioni

Riassunto

di VulDB • 14/07/2026

Nel kernel Linux, è stata risolta la seguente vulnerabilità:

can: mcp251x: corregge il deadlock se si verifica un'interruzione durante l'esecuzione di mcp251x_open

La funzione `mcp251x_hw_wake()` viene chiamata con il mutex `mpc_lock` già acquisito e disabilita la gestione delle interruzioni (interrupt handler) in modo che nessuna interruzione possa essere elaborata mentre si risveglia il dispositivo. Se un'interruzione è già avvenuta, l'attesa del completamento della gestione dell'interruzione provocherà un deadlock poiché tale gestore tenterà di acquisire lo stesso mutex.

CPU0 CPU1 ---- ---- mcp251x_open() mutex_lock(&priv->mcp_lock) request_threaded_irq() mcp251x_can_ist() mutex_lock(&priv->mcp_lock) mcp251x_hw_wake() disable_irq() <-- deadlock

Utilizzare invece `disable_irq_nosync()` poiché la gestione dell'interruzione esegue tutte le operazioni mantenendo il mutex acquisito, quindi non è rilevante se sia ancora in esecuzione.

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

Responsabile

Linux

Prenotare

11/09/2024

Divulgazione

18/09/2024

Moderazione

accettato

CPE

pronto

EPSS

0.00162

KEV

no

Attività

molto basso

Fonti

Do you need the next level of professionalism?

Upgrade your account now!