NVIDIA의 Nova 드라이버, 다른 DRM Rust 코드와 함께 Linux 7.2에서 계속 구축 중
요약
NVIDIA의 오픈 소스 Nova 드라이버가 Linux 7.2 커널을 대상으로 Rust 기반 DRM 서브시스템 업데이트를 진행 중입니다. Hopper 및 Blackwell 아키텍처 지원과 GSP 통합, GA100 지원 등 GPU 하드웨어 가속을 위한 핵심 기능들이 포함되었습니다.
핵심 포인트
- NVIDIA Nova 드라이버의 Rust 기반 DRM 서브시스템 확장
- Hopper 및 Blackwell GPU 아키텍처 활성화 작업 진행
- GSP(GPU System Processor) 통합 및 부트 경로 리팩터링
- GA100 Ampere 가속기 지원 및 VBIOS 파싱 강화
NVIDIA의 Nova 드라이버, 다른 DRM Rust 코드와 함께 Linux 7.2에서 계속 구축 중
작성자: Michael Larabel
분류: Linux Kernel
일시: 2026년 6월 5일 오전 06:56 EDT.
댓글 추가
Danilo Krummrich는 목요일에 Linux 7.2 커널을 대상으로 하는 DRM Rust 서브시스템(subsystem) 변경 사항의 주요 세트를 공개했습니다. Nouveau의 현대적인 후계자로 계속 형태를 갖춰가고 있는 NVIDIA의 오픈 소스 Nova 드라이버는 DRM Rust 작업의 상당 부분을 계속 차지하고 있습니다.
새로운 DRM Rust 풀 리퀘스트(pull request)와 함께 더 많은 DRM Rust 추상화(abstractions)가 메인라인(mainline)에 반영되고 있으며, Rust 디바이스 드라이버를 위한 고차 랭크 수명 유형(Higher-Ranked Lifetime Types, "HRT") 지원, GPUVM 즉시 모드 추상화(immediate mode abstraction) 및 기타 개선 사항이 포함되었습니다. 드라이버 측면에서는 Nova가 Rust DRM 커널 그래픽 드라이버 중에서 압도적으로 우세하며, Arm Tyr 드라이버에도 몇 가지 개선 사항이 포함되었습니다. 여전히 메인라인을 위한 Apple Silicon 커널 그래픽 드라이버의 징후는 보이지 않습니다.
NVIDIA Nova 드라이버는 Hopper 및 Blackwell GPU를 활성화하기 위한 업스트림(upstreamed) 작업이 계속되고 있습니다. 또한 NVIDIA GPU 시스템 프로세서(GSP) 통합, GA100 Ampere 가속기 지원, vBIOS 강화 및 리팩터링(refactoring) 등 더 일반적인 작업들이 포함됩니다:
-
Nova:
-
Hopper/Blackwell 활성화:
-
Hopper (GH100) 및 Blackwell (GB100, GB202)을 위한 GPU 식별 및 아키텍처 기반 HAL 선택 기능 추가.
-
Hopper 및 Blackwell에서 사용되는 FSP (Foundation Security Processor) 부트 경로 구현 (FSP falcon 엔진 지원, EMEM 작업, MCTP/NVDM 메시지 인프라 및 GSP 락다운(lockdown) 릴리스가 포함된 FSP 신뢰 체인(Chain of Trust) 부트 포함).
-
32비트 펌웨어 이미지 지원 및 펌웨어 이미지 형식의 자동 감지 기능 추가.
-
아키텍처별 프레임버퍼(framebuffer), sysmem 플러시(flush), PCI 설정 미러(config mirror), DMA 마스크(mask), WPR/non-WPR 힙 크기 조정 추가.
-
GSP 부트 및 언로드(unload):
-
GSP 부트 프로세스를 칩셋별 HAL로 리팩터링하여 SEC2 및 FSP 부트 경로를 깔끔하게 분리 유지.
-
적절한 드라이버 언로드 (unload) 구현: UNLOADING_GUEST_DRIVER 명령을 전송하고, 언바인딩 (unbinding) 시 Booter Unloader 및 FWSEC-SB를 실행하며, Gsp::boot() 실패 시 언로드 번들 (unload bundle)을 실행합니다. 이를 통해 드라이버 언바인드와 재탐색 (re-probe) 사이의 수동 GPU 리셋 필요성을 제거합니다.
-
GA100 지원:
-
IFR 헤더 탐지 및 스킵, 정확한 fwsignature 선택, 조건부 FRTS 부트, 그리고 IFR 헤더 레이아웃 문서화를 포함하여 GA100 GPU 지원을 추가합니다.
-
VBIOS 강화 및 리팩터링 (refactoring):
-
FWSEC 및 Falcon 데이터 경로 전반에 걸쳐 체크된 산술 연산 (checked arithmetic), 경계 검사 액세스 (bounds-checked accesses), 그리고 FromBytes 기반 구조체 읽기를 사용하여 VBIOS 파싱을 강화합니다. 전체적인 VBIOS 모듈 구조를 단순화합니다.
-
HRT 도입:
-
Arc 간접 참조를 대체하여 수명 매개변수화 (lifetime-parameterized)된 pci::Bar를 직접 사용합니다. SysmemFlush 및 GSP 시퀀서에서 ARef를 &'bound Device로 대체합니다. 드라이버 타입과 드라이버 데이터를 분리합니다.
-
기타:
-
모듈 이름을 kebab-case (nova-drm, nova-core)로 변경합니다.
-
Kconfig에서 리틀 엔디안 (little-endian)을 요구하여 기존 가정을 명시적으로 만듭니다.
최근 Vera CPU 벤치마킹을 위해 NVIDIA에 방문했을 때, Nova 드라이버에 대해 여러 사람에게 물어보았으며 그 전망에 대해 긍정적인 이야기들을 들었습니다. NVIDIA의 향후 Linux 드라이버 지원 내에서 Nova의 위치에 대해 공유할 공식적인 인용문은 아직 기다리고 있는 중입니다.
Linux 7.2 커널 사이클을 위해 준비된 DRM Rust 패치의 전체 목록을 확인하고 싶은 분들은 이 풀 리퀘스트 (pull request)를 확인하시기 바랍니다. Linux 7.2 병합 윈도우 (merge window)는 Linux v7.1 안정화 버전 출시 이후 6월 중순에 시작될 예정입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Phoronix의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기