🇰🇷 한글 설명
리눅스 커널의 drm/gpusvm 구성 요소에서 drm_gpusvm_scan_mm() 함수 호출 시 gpusvm 알림자 잠금(notifier lock)의 잠금/해제 균형이 맞지 않는 취약점이 발견되었습니다. 특정 오류 경로에서 잠금을 획득하지 않은 상태로 해제를 시도하여 시스템 불안정성을 초래할 수 있습니다.
💡 쉬운 설명
컴퓨터의 그래픽 자원을 관리하는 프로그램에서 문을 잠그지 않았는데 열려고 시도하는 오류가 발생했습니다. 이로 인해 시스템이 갑자기 멈추거나 예상치 못한 동작을 할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
drm/gpusvm: Fix unbalanced unlock in drm_gpusvm_scan_mm()
There is a unbalanced lock/unlock to gpusvm notifier lock:
[ 931.045868] =====================================
[ 931.046509] WARNING: bad unlock balance detected!
[ 931.047149] 6.19.0-rc6+xe-**************** #9 Tainted: G U
[ 931.048150] -------------------------------------
[ 931.048790] kworker/u5:0/51 is trying to release lock (&gpusvm->notifier_lock) at:
[ 931.049801] [<ffffffffa090c0d8>] drm_gpusvm_scan_mm+0x188/0x460 [drm_gpusvm_helper]
[ 931.050802] but there are no more locks to release!
[ 931.051463]
The drm_gpusvm_notifier_unlock() sits under err_free label and the
first jump to err_free is just before calling the
drm_gpusvm_notifier_lock() causing unbalanced unlock.
📍 영향받는 시스템
Linux kernel (drm/gpusvm 모듈을 사용하는 버전, 특히 6.19.0-rc6+xe 관련 커널)
⚔️ 공격 벡터
로컬 공격자가 특정 GPU 메모리 스캔 작업을 유도하여 커널 패닉 또는 시스템 불안정성을 유발할 수 있음
🛡️ 대응 방법
drm/gpusvm 관련 패치가 적용된 최신 리눅스 커널 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 취약점이 수정된 최신 패치 버전인지 확인하십시오.