🇰🇷 한글 설명
리눅스 커널의 drm/panthor 드라이버에서 GPU 캐시 플러시 작업이 실패하거나 영구적으로 차단될 경우 시스템이 멈추는 취약점이 존재합니다. 이 결함은 메모리 서브시스템이 차단되어 플러시 작업이 완료되지 않는 상황에서 GPU 리셋 및 대기열 관리를 통해 복구 메커니즘을 개선한 패치입니다.
💡 쉬운 설명
GPU 관련 작업을 처리하는 드라이버에서 오류가 발생했을 때 시스템이 완전히 멈추는 문제가 있었습니다. 이제 오류 발생 시 시스템을 재시작하거나 오류를 적절히 처리하여 정상적으로 작동할 수 있도록 개선되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/panthor: Recover from panthor_gpu_flush_caches() failures
We have seen a few cases where the whole memory subsystem is blocked
and flush operations never complete. When that happens, we want to:
- schedule a reset, so we can recover from this situation
- in the reset path, we need to reset the pending_reqs so we can send
new commands after the reset
- if more panthor_gpu_flush_caches() operations are queued after
the timeout, we skip them and return -EIO directly to avoid needless
waits (the memory block won't miraculously work again)
Note that we drop the WARN_ON()s because these hangs can be triggered
with buggy GPU jobs created by the UMD, and there's no way we can
prevent it. We do keep the error messages though.
v2:
- New patch
v3:
- Collect R-b
- Explicitly mention the fact we dropped the WARN_ON()s in the commit
message
v4:
- No changes
📍 영향받는 시스템
Linux kernel을 사용하는 ARM 기반 SoC(특히 Arm Mali GPU를 탑재한 시스템) 및 drm/panthor 드라이버가 활성화된 환경
⚔️ 공격 벡터
결함이 있는 GPU 명령어(UMD 생성)를 실행하여 메모리 차단 상태를 유발하거나, 고의적으로 캐시 플러시 작업을 과부하시켜 시스템 정지 상태를 유도
🛡️ 대응 방법
운영 체제 및 커널을 최신 안정 버전으로 업데이트하여 drm/panthor 드라이버의 복구 로직이 적용된 패치를 설치합니다.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인합니다.