Início
Início
Tendências
Tendências
Vulnerabilidades
Vulnerabilidades
Notícias
Notícias
Pesquisadores
Pesquisadores
Por que dbugs?
Por que dbugs?
Configurações

Peter Mann

#57096de 60,593
4.6CVSS total
Vulnerabilidades · 1
PT-2024-35518
2024-10-31
4.6
CVE-2024-53052
Linux
Linux Kernel
O problema ocorre quando o io uring inicia uma gravação, chamando `kiocb start write()` para aumentar o rwsem do superbloco, o que pode causar um impasse se alguém estiver tentando congelar o ponto de montagem. Isso resulta em um rastreamento travado, mostrando a dependência com a gravação bloqueada de iniciar uma nova gravação. O lado do congelamento captura o rwsem para gravação, excluindo novos gravadores e aguardando que as gravações existentes sejam concluídas. No entanto, o io uring usa incondicionalmente `kiocb start write()`, o que bloqueará se alguém estiver tentando congelar o ponto de montagem no momento. Isso pode ser acionado quando `IOCB NOWAIT` não está definido, fazendo com que o io uring tente uma aquisição bloqueante do rwsem do superbloco. A correção envolve fazer com que o lado do io uring respeite `IOCB NOWAIT`, retornando `-EAGAIN` e permitindo que o núcleo do io uring emita uma tentativa de bloqueio da gravação, garantindo o avanço do processo.