🇰🇷 한글 설명
Linux 커널의 Mediatek DRM 드라이버에서 AFBC(Arm Frame Buffer Compression) 지원 기능이 Mediatek MT8188 플랫폼에서 오작동하는 취약점입니다. 이로 인해 vblank 타임아웃이 발생하고 화면 렌더링이 깨지는 현상이 나타납니다.
💡 쉬운 설명
미디어텍 칩셋을 사용하는 특정 기기에서 화면을 압축해서 보여주는 기능이 제대로 작동하지 않아 화면이 깨지거나 멈추는 문제입니다. 시스템의 안정성을 해칠 수 있는 그래픽 드라이버 오류입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/mediatek: Disable AFBC support on Mediatek DRM driver
Commit c410fa9b07c3 ("drm/mediatek: Add AFBC support to Mediatek DRM
driver") added AFBC support to Mediatek DRM and enabled the
32x8/split/sparse modifier.
However, this is currently broken on Mediatek MT8188 (Genio 700 EVK
platform); tested using upstream Kernel and Mesa (v25.2.1), AFBC is used by
default since Mesa v25.0.
Kernel trace reports vblank timeouts constantly, and the render is garbled:
```
[CRTC:62:crtc-0] vblank wait timed out
WARNING: CPU: 7 PID: 70 at drivers/gpu/drm/drm_atomic_helper.c:1835 drm_atomic_helper_wait_for_vblanks.part.0+0x24c/0x27c
[...]
Hardware name: MediaTek Genio-700 EVK (DT)
Workqueue: events_unbound commit_work
pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : drm_atomic_helper_wait_for_vblanks.part.0+0x24c/0x27c
lr : drm_atomic_helper_wait_for_vblanks.part.0+0x24c/0x27c
sp : ffff80008337bca0
x29: ffff80008337bcd0 x28: 0000000000000061 x27: 0000000000000000
x26: 0000000000000001 x25: 0000000000000000 x24: ffff0000c9dcc000
x23: 0000000000000001 x22: 0000000000000000 x21: ffff0000c66f2f80
x20: ffff0000c0d7d880 x19: 0000000000000000 x18: 000000000000000a
x17: 000000040044ffff x16: 005000f2b5503510 x15: 0000000000000000
x14: 0000000000000000 x13: 74756f2064656d69 x12: 742074696177206b
x11: 0000000000000058 x10: 0000000000000018 x9 : ffff800082396a70
x8 : 0000000000057fa8 x7 : 0000000000000cce x6 : ffff8000823eea70
x5 : ffff0001fef5f408 x4 : ffff80017ccee000 x3 : ffff0000c12cb480
x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0000c12cb480
Call trace:
drm_atomic_helper_wait_for_vblanks.part.0+0x24c/0x27c (P)
drm_atomic_helper_commit_tail_rpm+0x64/0x80
commit_tail+0xa4/0x1a4
commit_work+0x14/0x20
process_one_work+0x150/0x290
worker_thread+0x2d0/0x3ec
kthread+0x12c/0x210
ret_from_fork+0x10/0x20
---[ end trace 0000000000000000 ]---
```
Until this gets fixed upstream, disable AFBC support on this platform, as
it's currently broken with upstream Mesa.
📍 영향받는 시스템
Linux Kernel (Mediatek MT8188 / Genio 700 EVK platform) using Mesa v25.0 or higher
⚔️ 공격 벡터
Local (시스템 리소스 소모 및 그래픽 오류 유발)
🛡️ 대응 방법
Mediatek DRM 드라이버에서 AFBC 지원 기능을 비활성화하거나 최신 커널 패치를 적용하십시오.
🔧 검증 코드
명령어 실행 결과로 'vblank wait timed out' 메시지가 출력되면 해당 취약점이 있는 상태입니다.
dmesg | grep -i "vblank wait timed out"