CVE-2026-80855 in Linuxinformazioni

Riassunto

di VulDB • 04/09/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

fuse: correzione della perdita del lock di invalidate in caso di errore su open O_TRUNC DAX

La funzione fuse_open() acquisisce filemap_invalidate_lock() per una troncatura DAX (dax_truncate = true) e la rilascia prima dell'etichetta out_inode_unlock. Tuttavia, quando fuse_dax_break_layouts() fallisce, il salto goto verso out_inode_unlock salta l'operazione di sblocco, causando una perdita del rwsem; ciò fa sì che eventuali fault successivi o operazioni di troncatura sul file vengano bloccate a causa del lock obsoleto.

fuse_dax_break_layouts() può restituire un errore -ERESTARTSYS quando un segnale interrompe l'attesa per lo svuotamento delle pagine DAX occupate:

open("file", O_RDWR | O_TRUNC) └─ fuse_open() ├─ filemap_invalidate_lock() # dax_truncate └─ fuse_dax_break_layouts() └─ dax_break_layout() └─ wait_page_idle() # TASK_INTERRUPTIBLE └─ fuse_wait_dax_page() # unlock, schedule, re-lock └─ signal → -ERESTARTSYS goto out_inode_unlock # <- lock perso

Si risolve il problema spostando filemap_invalidate_unlock() sotto l'etichetta in modo che tutti i percorsi di errore rilascino il lock e si rinomina l'etichetta in out_unlock poiché ora copre più del solo inode lock.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsabile

Linux

Prenotare

26/08/2026

Divulgazione

04/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!