Re: [PULL v3] gvt-next

From: Jani Nikula
Date: Mon Apr 25 2022 - 07:31:21 EST


On Thu, 21 Apr 2022, "Wang, Zhi A" <zhi.a.wang@xxxxxxxxx> wrote:
> Hi folks:
>
> Here is the PR of gvt-next. Thanks so much for the patience.

Thanks, pulled to drm-intel-next, applied the below fix for the silent
conflict on top, and pushed out. Should show up in linux-next shortly.

BR,
Jani.

>
> Mostly it includes the patch bundle of GVT-g re-factor patches for adapting the GVT-g with the
> new MDEV interfaces:
>
> - Separating the MMIO table from GVT-g. (Zhi)
> - GVT-g re-factor. (Christoph)
> - GVT-g mdev API cleanup. (Jason)
> - GVT-g trace/makefile cleanup. (Jani)
>
> Thanks so much for making this happen.
>
> This PR has been tested as following and no problem shows up:
>
> $dim update-branches
> $dim apply-pull drm-intel-next < this_email.eml
>
> When merging this pull to drm-intel-next, please include the following code in the merge commit:
>
> diff --git a/drivers/gpu/drm/i915/intel_gvt_mmio_table.c b/drivers/gpu/drm/i915/intel_gvt_mmio_table.c
> index 03a7fcd0f904..72dac1718f3e 100644
> --- a/drivers/gpu/drm/i915/intel_gvt_mmio_table.c
> +++ b/drivers/gpu/drm/i915/intel_gvt_mmio_table.c
> @@ -3,6 +3,7 @@
> * Copyright © 2020 Intel Corporation
> */
>
> +#include "display/intel_dmc_regs.h"
> #include "display/vlv_dsi_pll_regs.h"
> #include "gt/intel_gt_regs.h"
> #include "gvt/gvt.h"
>
>
> The following changes since commit 3123109284176b1532874591f7c81f3837bbdc17:
>
> Linux 5.18-rc1 (2022-04-03 14:08:21 -0700)
>
> are available in the Git repository at:
>
> https://github.com/intel/gvt-linux tags/gvt-next-2022-04-21-for-christoph
>
> for you to fetch changes up to 2917f53113be3b7a0f374e02cebe6d6b749366b5:
>
> vfio/mdev: Remove mdev drvdata (2022-04-21 07:36:56 -0400)
>
> ----------------------------------------------------------------
> gvt-next-2022-04-21-for-christoph
>
> - Separating the MMIO table from GVT-g. (Zhi)
> - GVT-g re-factor. (Christoph)
> - GVT-g mdev API cleanup. (Jason)
> - GVT-g trace/makefile cleanup. (Jani)
>
> ----------------------------------------------------------------
> Christoph Hellwig (27):
> drm/i915/gvt: remove module refcounting in intel_gvt_{,un}register_hypervisor
> drm/i915/gvt: remove enum hypervisor_type
> drm/i915/gvt: rename intel_vgpu_ops to intel_vgpu_mdev_ops
> drm/i915/gvt: move the gvt code into kvmgt.ko
> drm/i915/gvt: remove intel_gvt_ops
> drm/i915/gvt: remove the map_gfn_to_mfn and set_trap_area ops
> drm/i915/gvt: remove the unused from_virt_to_mfn op
> drm/i915/gvt: merge struct kvmgt_vdev into struct intel_vgpu
> drm/i915/gvt: merge struct kvmgt_guest_info into strut intel_vgpu
> drm/i915/gvt: remove vgpu->handle
> drm/i915/gvt: devirtualize ->{read,write}_gpa
> drm/i915/gvt: devirtualize ->{get,put}_vfio_device
> drm/i915/gvt: devirtualize ->set_edid and ->set_opregion
> drm/i915/gvt: devirtualize ->detach_vgpu
> drm/i915/gvt: devirtualize ->inject_msi
> drm/i915/gvt: devirtualize ->is_valid_gfn
> drm/i915/gvt: devirtualize ->gfn_to_mfn
> drm/i915/gvt: devirtualize ->{enable,disable}_page_track
> drm/i915/gvt: devirtualize ->dma_{,un}map_guest_page
> drm/i915/gvt: devirtualize dma_pin_guest_page
> drm/i915/gvt: remove struct intel_gvt_mpt
> drm/i915/gvt: remove the extra vfio_device refcounting for dmabufs
> drm/i915/gvt: streamline intel_vgpu_create
> drm/i915/gvt: pass a struct intel_vgpu to the vfio read/write helpers
> drm/i915/gvt: remove kvmgt_guest_{init,exit}
> drm/i915/gvt: convert to use vfio_register_emulated_iommu_dev
> drm/i915/gvt: merge gvt.c into kvmgvt.c
>
> Jani Nikula (2):
> drm/i915/gvt: fix trace TRACE_INCLUDE_PATH
> drm/i915/gvt: better align the Makefile with i915 Makefile
>
> Jason Gunthorpe (5):
> vfio/mdev: Remove vfio_mdev.c
> vfio/mdev: Remove mdev_parent_ops dev_attr_groups
> vfio/mdev: Remove mdev_parent_ops
> vfio/mdev: Use the driver core to create the 'remove' file
> vfio/mdev: Remove mdev drvdata
>
> Zhi Wang (3):
> i915/gvt: Separate the MMIO tracking table from GVT-g
> i915/gvt: Save the initial HW state snapshot in i915
> i915/gvt: Use the initial HW state snapshot saved in i915
>
> Documentation/driver-api/vfio-mediated-device.rst | 27 +-
> drivers/gpu/drm/i915/Kconfig | 36 +-
> drivers/gpu/drm/i915/Makefile | 8 +-
> drivers/gpu/drm/i915/gvt/Makefile | 30 +-
> drivers/gpu/drm/i915/gvt/cfg_space.c | 89 +-
> drivers/gpu/drm/i915/gvt/cmd_parser.c | 4 +-
> drivers/gpu/drm/i915/gvt/dmabuf.c | 36 +-
> drivers/gpu/drm/i915/gvt/execlist.c | 12 +-
> drivers/gpu/drm/i915/gvt/firmware.c | 25 +-
> drivers/gpu/drm/i915/gvt/gtt.c | 55 +-
> drivers/gpu/drm/i915/gvt/gvt.c | 340 ------
> drivers/gpu/drm/i915/gvt/gvt.h | 128 +-
> drivers/gpu/drm/i915/gvt/handlers.c | 1033 +++--------------
> drivers/gpu/drm/i915/gvt/hypercall.h | 82 --
> drivers/gpu/drm/i915/gvt/interrupt.c | 40 +-
> drivers/gpu/drm/i915/gvt/kvmgt.c | 1097 +++++++++--------
> drivers/gpu/drm/i915/gvt/mmio.c | 4 +-
> drivers/gpu/drm/i915/gvt/mmio.h | 1 -
> drivers/gpu/drm/i915/gvt/mpt.h | 400 -------
> drivers/gpu/drm/i915/gvt/opregion.c | 148 +--
> drivers/gpu/drm/i915/gvt/page_track.c | 8 +-
> drivers/gpu/drm/i915/gvt/reg.h | 9 +-
> drivers/gpu/drm/i915/gvt/scheduler.c | 37 +-
> drivers/gpu/drm/i915/gvt/trace.h | 2 +-
> drivers/gpu/drm/i915/gvt/vgpu.c | 22 +-
> drivers/gpu/drm/i915/i915_driver.c | 7 -
> drivers/gpu/drm/i915/i915_drv.h | 3 +
> drivers/gpu/drm/i915/intel_gvt.c | 248 +++-
> drivers/gpu/drm/i915/intel_gvt.h | 32 +-
> drivers/gpu/drm/i915/intel_gvt_mmio_table.c | 1291 +++++++++++++++++++++
> drivers/s390/cio/vfio_ccw_ops.c | 7 +-
> drivers/s390/crypto/vfio_ap_ops.c | 9 +-
> drivers/vfio/mdev/Makefile | 2 +-
> drivers/vfio/mdev/mdev_core.c | 52 +-
> drivers/vfio/mdev/mdev_driver.c | 10 -
> drivers/vfio/mdev/mdev_private.h | 6 +-
> drivers/vfio/mdev/mdev_sysfs.c | 37 +-
> drivers/vfio/mdev/vfio_mdev.c | 152 ---
> include/linux/mdev.h | 82 +-
> samples/vfio-mdev/mbochs.c | 9 +-
> samples/vfio-mdev/mdpy.c | 9 +-
> samples/vfio-mdev/mtty.c | 39 +-
> 42 files changed, 2530 insertions(+), 3138 deletions(-)
> delete mode 100644 drivers/gpu/drm/i915/gvt/gvt.c
> delete mode 100644 drivers/gpu/drm/i915/gvt/hypercall.h
> delete mode 100644 drivers/gpu/drm/i915/gvt/mpt.h
> create mode 100644 drivers/gpu/drm/i915/intel_gvt_mmio_table.c
> delete mode 100644 drivers/vfio/mdev/vfio_mdev.c

--
Jani Nikula, Intel Open Source Graphics Center