On Fri, Feb 04, 2022 at 06:33:59PM -0800, Iouri Tarassov wrote: > --- /dev/null > +++ b/drivers/hv/dxgkrnl/Kconfig > @@ -0,0 +1,26 @@ > +# > +# dxgkrnl configuration > +# No copyright? No SPDX line? Did you run checkpatch.pl on this thing? And we do not know what a "dgxkrnl" is. This is the kernel, so why say it again? And we have lots of vowels to use, please do so. > + > +config DXGKRNL > + tristate "Microsoft Paravirtualized GPU support" > + depends on HYPERV > + depends on 64BIT || COMPILE_TEST > + help > + This driver supports paravirtualized virtual compute devices, exposed > + by Microsoft Hyper-V when Linux is running inside of a virtual machine > + hosted by Windows. The virtual machines needs to be configured to use > + host compute adapters. The driver name is dxgkrnl. > + > + An example of such virtual machine is a Windows Subsystem for > + Linux container. When such container is instantiated, the Windows host > + assigns compatible host GPU adapters to the container. The corresponding > + virtual GPU devices appear on the PCI bus in the container. These > + devices are enumerated and accessed by this driver. > + > + Communications with the driver are done by using the Microsoft libdxcore > + library, which translates the D3DKMT interface > + <https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/d3dkmthk/> > + to the driver IOCTLs. The virtual GPU devices are paravirtualized, > + which means that access to the hardware is done in the host. The driver > + communicates with the host using Hyper-V VM bus communication channels. > diff --git a/drivers/hv/dxgkrnl/Makefile b/drivers/hv/dxgkrnl/Makefile > new file mode 100644 > index 000000000000..745c66bebe5d > --- /dev/null > +++ b/drivers/hv/dxgkrnl/Makefile > @@ -0,0 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0 > +# Makefile for the Linux video drivers. There's lots of linux video drivers in the kernel, this is not all of them here. > + > +obj-$(CONFIG_DXGKRNL) += dxgkrnl.o > +dxgkrnl-y := dxgmodule.o hmgr.o misc.o dxgadapter.o ioctl.o dxgvmbus.o dxgprocess.o > diff --git a/drivers/hv/dxgkrnl/dxgadapter.c b/drivers/hv/dxgkrnl/dxgadapter.c > new file mode 100644 > index 000000000000..e0a6fea00bd5 > --- /dev/null > +++ b/drivers/hv/dxgkrnl/dxgadapter.c > @@ -0,0 +1,172 @@ > +// SPDX-License-Identifier: GPL-2.0 > + > +/* > + * Copyright (c) 2019, Microsoft Corporation. Drop the trailing ',' in the copyright notice please, that's not how these should look like. And I doubt you last touched this in 2019, right? thanks, greg k-h