Cracking Windows Open: Porting RADV to Win32
Hacker News · 2026-07-29
Louis-Francis Ratté-Boulianne, on July 28, 2026, details the challenges and progress in porting RADV, an open-source Vulkan driver, to WIN32, building upon prior work by Faith which established the feasibility of leveraging the Windows 10 WDDM2 interface. Though WDDM2 offers a clearer model for user-mode driver interaction, significant challenges remain, primarily due to undocumented, vendor-specific "opaque blobs" within D3DKMT calls that tightly couple user-mode and kernel-mode drivers.
The project aimed for greater flexibility and stability, moving beyond WSL to native Windows support, and has achieved significant improvements in command stream handling, synchronization, and support for features like sparse bindings and tessellation. While not yet conformant, the team successfully ran Counter-Strike 2 using the ported RADV. Key hurdles included architectural differences between Gen 11 (RX 7900 XT) and 10th Gen (RX 7800 XT) hardware, compiler incompatibilities between MSVC and GCC/Clang, and the pervasive use of opaque data within the `D3DKMTEscape` API. The most critical remaining challenge for production readiness is securing a stable, documented interface with AMD’s proprietary kernel-mode driver, or developing a shim library to mediate communication, given that reverse-engineered private data structures are inherently fragile. Further work is also needed on presentation, specifically enabling DXGI swapchains and ultimately achieving zero-copy swaps for substantial performance gains, which would require collaboration with AMD and Microsoft. Valve is sponsoring this phase of the work.
*The full article also explores specific technical details of the advancements made in command handling and synchronization, and outlines the long-term implications for open-source drivers on Windows.*