CVE-2026-89803 in Linux
요약
\~에 의해 VulDB • 2026. 09. 16.
리눅스 커널에서 다음 취약점이 해결되었습니다:
drm/nouveau: fence 컨텍스트 해제 전에 채널 종료 이벤트를 구독 취소함
nouveau_channel_del()은 먼저 fence 컨텍스트를 해체한 후, nvif 객체 정리 과정 중 나중에 channel-kill 구독을 해제합니다.
if (chan->fence) nouveau_fence(chan->cli->drm)->context_del(chan); ... nvif_object_dtor(&chan->vram); nvif_event_dtor(&chan->kill);
구독된 핸들러는 nouveau_channel_killed()이며, 이는 nouveau_channel_kill()를 호출하고そこから chan->fence에서 nouveau_fence_context_kill()을 실행합니다. 이 시간 창(window)에 전달되는 kill 이벤트는 fctx->lock을 획득하고 context_del()이 이미 해제한 fence 컨텍스트의 fctx->pending를 순회합니다.
현재 Fermi 아키텍처 미만에서는 아무도 여기에 도달하지 않습니다. 구독은 FERMI_CHANNEL_GPFIFO로 제한되어 있으며, 그곳에서 채널을 종료하는 작업이 수행되지 않기 때문입니다. Fermi 및 그 이후 버전에서는 해당 시간 창이 실제로 존재하지만 매우 좁습니다. kill 이벤트가 정확히 채널이 파괴되는 시기에 도착해야 하기 때문입니다. 이것만으로도 충분한 이유이며, 따라서 이 패치에는 Fixes: 태그가 붙어 있습니다. 이번 시리즈의 마지막 패치는 Tesla 채널도 구독 대상으로 포함합니다. 현재로서는 아무것도 이러한 채널을 종료하지 않으므로 노출 범위가 넓어지지는 않지만, 이는 회복 경로(recovery path)를 위한 기반 작업입니다. 해당 코드가 적용되기 전에 순서(ordering) 문제를 먼저 수정하는 것이 좋습니다.
의존하고 있는 요소들이 해체되기 전에 구독(subscription)을 해제합니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.