Microsoft Posts Updated "DXGKRNL" Linux Kernel Driver For WSL/WSA
Microsoft continues work on their controversial "DXGKRNL" driver they hope to mainline into the Linux kernel for benefiting their Windows Subsystem for Linux (WSL) and Windows Subsystem for Android (WSA) efforts.
DXGKRNL is the kernel driver portion of their effort around exposing DirectX graphics adapters to Linux user-space for WSL2 (and soon, WSA) usage. The DXGKRNL driver interfaces with Windows' Hyper-V virtual GPU for passing the D3D12 command stream onto the host / native Windows driver and GPU for actual execution so Linux/Android guests can enjoy GPU acceleration whether it be for graphics or GPU computing.
Back when the original DXGKRNL code was published in 2020, it was quickly criticized by upstream kernel developers especially for relying on closed-source user-space software for usage, which immediately rules it out for mainlining. But now that Intel's oneAPI can work within Windows Subsystem for Linux, they technically have an open-source user-space for testing rather than having to rely on other vendor closed-source drivers. Thus that blocker can be avoided though some still are not in favor of this driver due to the normal Microsoft concerns.
Back in January the Microsoft engineers posted a reworked version of DXGKRNL and this Saturday a "v2" patch series was posted.
Over last month's patches, which were "rebuilt from the ground up", the v2 patches have improved the layout of the code in the patch series, compiler warnings have been addressed, DXGSYNCFILE behavior was dropped for now and will be re-submitted later, and other low-level code improvements.
The DXGKRNL v2 driver is coming in at 24 patches amounting to 16.5k lines of new kernel code. We'll see how kernel developers react to this latest DXGKRNL driver series and ultimately if Microsoft is on a trajectory for getting this driver mainlined for benefiting their WSL/WSA endeavors.
DXGKRNL is the kernel driver portion of their effort around exposing DirectX graphics adapters to Linux user-space for WSL2 (and soon, WSA) usage. The DXGKRNL driver interfaces with Windows' Hyper-V virtual GPU for passing the D3D12 command stream onto the host / native Windows driver and GPU for actual execution so Linux/Android guests can enjoy GPU acceleration whether it be for graphics or GPU computing.
Back when the original DXGKRNL code was published in 2020, it was quickly criticized by upstream kernel developers especially for relying on closed-source user-space software for usage, which immediately rules it out for mainlining. But now that Intel's oneAPI can work within Windows Subsystem for Linux, they technically have an open-source user-space for testing rather than having to rely on other vendor closed-source drivers. Thus that blocker can be avoided though some still are not in favor of this driver due to the normal Microsoft concerns.
Back in January the Microsoft engineers posted a reworked version of DXGKRNL and this Saturday a "v2" patch series was posted.
Over last month's patches, which were "rebuilt from the ground up", the v2 patches have improved the layout of the code in the patch series, compiler warnings have been addressed, DXGSYNCFILE behavior was dropped for now and will be re-submitted later, and other low-level code improvements.
The DXGKRNL v2 driver is coming in at 24 patches amounting to 16.5k lines of new kernel code. We'll see how kernel developers react to this latest DXGKRNL driver series and ultimately if Microsoft is on a trajectory for getting this driver mainlined for benefiting their WSL/WSA endeavors.
43 Comments