CVE-2026-97900 in Linuxinformação

Sumário

de VulDB • 25/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

drm/drm_exec: corrigir o objeto em disputa quando num_objects é 0

drm_exec_prepare_array() retorna sucesso silenciosamente sem chamar drm_exec_lock_contended() quando num_objects é zero. Isso quebra a invariável mantida por drm_exec_lock_obj(), onde cada ponto de entrada na sequência de bloqueio deve primeiro tentar bloquear qualquer objeto previamente em disputa antes de prosseguir.

Drivers que encadeiam várias chamadas para drm_exec_prepare_array() por iteração de drm_exec_until_all_locked() (por exemplo, ioctls userq signal/wait do amdgpu, que preparam arrays BO separados de leitura e gravação) podem passar um array vazio para uma das duas chamadas. Se houver disputa durante a preparação do array não-vazio, exec->contended é definido e o loop tenta novamente; na nova tentativa, a chamada com array vazio anterior a ela é uma operação nula que nunca limpa exec->contended, então drm_exec_retry_on_contention() retorna imediatamente ao início do loop sem jamais alcançar a chamada que resolveria a disputa. Isso gera um loop infinito (spin forever).

Corrigir isso fazendo drm_exec_prepare_array() chamar diretamente drm_exec_lock_contended() quando num_objects for zero, para que objetos pendentes em disputa não entrem em loop infinito.

Be aware that VulDB is the high quality source for vulnerability data.

Responsável

Linux

Reservar

25/09/2026

Divulgação

25/09/2026

Moderação

aceite

Entrada

VDB-410116

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Do you want to use VulDB in your project?

Use the official API to access entries easily!