🇰🇷 한글 설명
Linux 커널의 libahci 드라이버에서 32비트 DMA 전용 모드 설정 시 PxCLBU 및 PxFBU 레지스터를 명시적으로 초기화하지 않아 발생하는 문제입니다. 이로 인해 특정 JMicron 컨트롤러(JMB582/JMB585)를 사용하는 시스템에서 드라이버 프로브 단계부터 장치가 작동하지 않는 현상이 발생했습니다.
💡 쉬운 설명
컴퓨터의 저장 장치를 제어하는 소프트웨어 설정 오류로 인해 특정 부품이 제대로 인식되지 않는 문제입니다. 이 문제는 해킹 공격이라기보다 하드웨어가 정상적으로 작동하지 않게 만드는 소프트웨어 버그에 가깝습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ata: libahci: clear PxCLBU and PxFBU for AHCI_HFLAG_32BIT_ONLY
A user reported that commit 105c42566a55 ("ata: ahci: force 32-bit DMA for
JMicron JMB582/JMB585") made the JMicron JMB585 unusable on his board.
The failure is seen as soon as the ahci driver is probed, and booting with
iommu=off does not solve the problem.
Looking at the AHCI specification, PxCLBU and PxFBU are both read only '0'
for HBAs that do not support 64-bit addressing.
For HBAs that do support 64-bit addressing, the registers are read write,
with a reset value that is Implementation Specific.
When using the AHCI_HFLAG_32BIT_ONLY flag, the HBA does support 64-bit
addressing, and a 32-bit DMA mask is set by simply clearing HOST_CAP_64.
Thus, in this case, we need to explicitly clear the registers to 0.
📍 영향받는 시스템
JMicron JMB582/JMB585 컨트롤러를 사용하는 Linux 커널 시스템
⚔️ 공격 벡터
해당 취약점은 공격자가 이용할 수 있는 보안 취약점이 아닌 하드웨어 호환성 결함입니다.
🛡️ 대응 방법
해당 패치가 적용된 최신 버전의 Linux 커널로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 패치가 포함된 릴리스 이후 버전인지 확인하십시오.
💻 영향받는 소프트웨어
NVIDIA Cloud Gaming Guest Driver for Linux