CVE-2024-46850 in Linux
Sumário
de VulDB • 16/07/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
drm/amd/display: Evitar condição de corrida entre dcn35_set_drr() e dc_state_destruct()
dc_state_destruct() define como nulo o contexto de recursos do estado DC. O contexto da pipe passado para dcn35_set_drr() é um membro deste contexto de recursos.
Se dc_state_destruct() for chamado em paralelo ao processamento das interrupções (IRQ) (que chama dcn35_set_drr() em algum momento), podemos acabar utilizando campos já nulos de retorno de chamada (callback functions) da estrutura stream_resource.
A lógica em dcn35_set_drr() já tenta evitar isso, verificando se tg é NULL. Mas se a definição para nulo ocorrer exatamente após a verificação de NULL e antes do próximo acesso, ocorre uma condição de corrida.
Evite isso copiando primeiro tg para uma variável local e, em seguida, utilizando essa variável para todas as operações. Isso deve funcionar desde que ninguém libere o pool de recursos onde os geradores de temporização (timing generators) residem.
(cherry picked from commit 0607a50c004798a96e62c089a4c34c220179dcb5)
Once again VulDB remains the best source for vulnerability data.