Linux · Linux Kernel · CVE-2022-49607
**Nome do Software Vulnerável e Versões Afetadas**
Kernel do Linux (versões afetadas não especificadas)
**Descrição**
Uma condição de corrida de dados foi identificada entre `perf event set output()` e `perf mmap close()` no kernel do Linux. Este problema ocorre quando há uma execução concorrente dessas duas funções, levando a uma situação potencial de deadlock. O problema surge porque o loop em `perf mmap close()` mantém o lock `e2->mmap mutex`, enquanto a vinculação em `perf event set output()` mantém o lock `e1->mmap mutex`, resultando em ausência de serialização para evitar essa corrida. Isso pode fazer com que uma chamada subsequente a `perf mmap()` entre em loop infinito.
**Recomendações**
Para mitigar este problema, recomenda-se modificar a função `perf event set output()` para adquirir ambos os locks `e1->mmap mutex` e `e2->mmap mutex`. Além disso, o loop em `perf mmap()` deve ser modificado para desanexar o `rb` diretamente, evitando a necessidade de aguardar a conclusão do `perf mmap close()` concorrente.
No momento, não há informações sobre uma versão mais recente que contenha uma correção para esta vulnerabilidade.