Re: [PATCH v2 01/24] drivers: hv: dxgkrnl: Driver initialization and creation of dxgadapter

From: Greg KH
Date: Sat Feb 05 2022 - 03:29:07 EST


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