From: Christoph Hellwig <hch@lst.de> To: Jani Nikula <jani.nikula@linux.intel.com>, Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>, Zhenyu Wang <zhenyuw@linux.intel.com>, Zhi Wang <zhi.a.wang@intel.com> Cc: intel-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Jason Gunthorpe <jgg@nvidia.com>, linux-kernel@vger.kernel.org Subject: [Intel-gfx] [PATCH 21/29] drm/i915/gvt: devirtualize ->dma_{, un}map_guest_page Date: Tue, 2 Nov 2021 08:05:53 +0100 [thread overview] Message-ID: <20211102070601.155501-22-hch@lst.de> (raw) In-Reply-To: <20211102070601.155501-1-hch@lst.de> Just call the functions directly. Also remove a pointless wrapper. Signed-off-by: Christoph Hellwig <hch@lst.de> --- drivers/gpu/drm/i915/gvt/dmabuf.c | 10 ++-------- drivers/gpu/drm/i915/gvt/gtt.c | 20 +++++++++---------- drivers/gpu/drm/i915/gvt/gvt.h | 4 ++++ drivers/gpu/drm/i915/gvt/hypercall.h | 5 ----- drivers/gpu/drm/i915/gvt/kvmgt.c | 6 ++---- drivers/gpu/drm/i915/gvt/mpt.h | 29 ---------------------------- 6 files changed, 17 insertions(+), 57 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/dmabuf.c b/drivers/gpu/drm/i915/gvt/dmabuf.c index bc53a0c60b444..03d82f4f9aa2e 100644 --- a/drivers/gpu/drm/i915/gvt/dmabuf.c +++ b/drivers/gpu/drm/i915/gvt/dmabuf.c @@ -48,12 +48,6 @@ static int vgpu_pin_dma_address(struct intel_vgpu *vgpu, return ret; } -static void vgpu_unpin_dma_address(struct intel_vgpu *vgpu, - dma_addr_t dma_addr) -{ - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, dma_addr); -} - static int vgpu_gem_get_pages( struct drm_i915_gem_object *obj) { @@ -108,7 +102,7 @@ static int vgpu_gem_get_pages( for_each_sg(st->sgl, sg, i, j) { dma_addr = sg_dma_address(sg); if (dma_addr) - vgpu_unpin_dma_address(vgpu, dma_addr); + intel_gvt_dma_unmap_guest_page(vgpu, dma_addr); } sg_free_table(st); kfree(st); @@ -130,7 +124,7 @@ static void vgpu_gem_put_pages(struct drm_i915_gem_object *obj, int i; for_each_sg(pages->sgl, sg, fb_info->size, i) - vgpu_unpin_dma_address(vgpu, + intel_gvt_dma_unmap_guest_page(vgpu, sg_dma_address(sg)); } diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c index 3a7822bbf4570..ae65bd0ba480e 100644 --- a/drivers/gpu/drm/i915/gvt/gtt.c +++ b/drivers/gpu/drm/i915/gvt/gtt.c @@ -1011,7 +1011,7 @@ static inline void ppgtt_invalidate_pte(struct intel_vgpu_ppgtt_spt *spt, if (!pfn || pfn == vgpu->gtt.scratch_pt[type].page_mfn) return; - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); + intel_gvt_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); } static int ppgtt_invalidate_spt(struct intel_vgpu_ppgtt_spt *spt) @@ -1210,8 +1210,8 @@ static int split_2MB_gtt_entry(struct intel_vgpu *vgpu, return PTR_ERR(sub_spt); for_each_shadow_entry(sub_spt, &sub_se, sub_index) { - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, - start_gfn + sub_index, PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, start_gfn + sub_index, + PAGE_SIZE, &dma_addr); if (ret) { ppgtt_invalidate_spt(spt); return ret; @@ -1256,8 +1256,8 @@ static int split_64KB_gtt_entry(struct intel_vgpu *vgpu, ops->set_64k_splited(&entry); for (i = 0; i < GTT_64K_PTE_STRIDE; i++) { - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, - start_gfn + i, PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, start_gfn + i, + PAGE_SIZE, &dma_addr); if (ret) return ret; @@ -1311,8 +1311,7 @@ static int ppgtt_populate_shadow_entry(struct intel_vgpu *vgpu, } /* direct shadow */ - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, gfn, page_size, - &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, gfn, page_size, &dma_addr); if (ret) return -ENXIO; @@ -2243,8 +2242,7 @@ static void ggtt_invalidate_pte(struct intel_vgpu *vgpu, pfn = pte_ops->get_pfn(entry); if (pfn != vgpu->gvt->gtt.scratch_mfn) - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, - pfn << PAGE_SHIFT); + intel_gvt_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); } static int emulate_ggtt_mmio_write(struct intel_vgpu *vgpu, unsigned int off, @@ -2335,8 +2333,8 @@ static int emulate_ggtt_mmio_write(struct intel_vgpu *vgpu, unsigned int off, goto out; } - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, gfn, - PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, gfn, PAGE_SIZE, + &dma_addr); if (ret) { gvt_vgpu_err("fail to populate guest ggtt entry\n"); /* guest driver may read/write the entry when partial diff --git a/drivers/gpu/drm/i915/gvt/gvt.h b/drivers/gpu/drm/i915/gvt/gvt.h index 28e405e00fecd..727b276a29a21 100644 --- a/drivers/gpu/drm/i915/gvt/gvt.h +++ b/drivers/gpu/drm/i915/gvt/gvt.h @@ -766,6 +766,10 @@ void intel_gvt_debugfs_clean(struct intel_gvt *gvt); int intel_gvt_page_track_add(struct intel_vgpu *info, u64 gfn); int intel_gvt_page_track_remove(struct intel_vgpu *info, u64 gfn); +int intel_gvt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, + unsigned long size, dma_addr_t *dma_addr); +void intel_gvt_dma_unmap_guest_page(struct intel_vgpu *vgpu, + dma_addr_t dma_addr); #include "trace.h" #include "mpt.h" diff --git a/drivers/gpu/drm/i915/gvt/hypercall.h b/drivers/gpu/drm/i915/gvt/hypercall.h index ded13a63ab663..ba03b3368a955 100644 --- a/drivers/gpu/drm/i915/gvt/hypercall.h +++ b/drivers/gpu/drm/i915/gvt/hypercall.h @@ -46,11 +46,6 @@ struct intel_gvt_mpt { int (*host_init)(struct device *dev, void *gvt); void (*host_exit)(struct device *dev, void *gvt); - int (*dma_map_guest_page)(struct intel_vgpu *vgpu, unsigned long gfn, - unsigned long size, dma_addr_t *dma_addr); - void (*dma_unmap_guest_page)(struct intel_vgpu *vgpu, - dma_addr_t dma_addr); - int (*dma_pin_guest_page)(struct intel_vgpu *vgpu, dma_addr_t dma_addr); }; diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 4795d7c223ad7..5a35d40f6afee 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c +++ b/drivers/gpu/drm/i915/gvt/kvmgt.c @@ -1856,7 +1856,7 @@ void intel_vgpu_detach_regions(struct intel_vgpu *vgpu) vgpu->region = NULL; } -static int kvmgt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, +int intel_gvt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, unsigned long size, dma_addr_t *dma_addr) { struct gvt_dma *entry; @@ -1932,7 +1932,7 @@ static void __gvt_dma_release(struct kref *ref) __gvt_cache_remove_entry(entry->vgpu, entry); } -static void kvmgt_dma_unmap_guest_page(struct intel_vgpu *vgpu, +void intel_gvt_dma_unmap_guest_page(struct intel_vgpu *vgpu, dma_addr_t dma_addr) { struct gvt_dma *entry; @@ -1950,8 +1950,6 @@ static void kvmgt_dma_unmap_guest_page(struct intel_vgpu *vgpu, static const struct intel_gvt_mpt kvmgt_mpt = { .host_init = kvmgt_host_init, .host_exit = kvmgt_host_exit, - .dma_map_guest_page = kvmgt_dma_map_guest_page, - .dma_unmap_guest_page = kvmgt_dma_unmap_guest_page, .dma_pin_guest_page = kvmgt_dma_pin_guest_page, }; diff --git a/drivers/gpu/drm/i915/gvt/mpt.h b/drivers/gpu/drm/i915/gvt/mpt.h index d2723ac8bb044..26c1ee690f7e9 100644 --- a/drivers/gpu/drm/i915/gvt/mpt.h +++ b/drivers/gpu/drm/i915/gvt/mpt.h @@ -71,35 +71,6 @@ static inline void intel_gvt_hypervisor_host_exit(struct device *dev, void *gvt) intel_gvt_host.mpt->host_exit(dev, gvt); } -/** - * intel_gvt_hypervisor_dma_map_guest_page - setup dma map for guest page - * @vgpu: a vGPU - * @gfn: guest pfn - * @size: page size - * @dma_addr: retrieve allocated dma addr - * - * Returns: - * 0 on success, negative error code if failed. - */ -static inline int intel_gvt_hypervisor_dma_map_guest_page( - struct intel_vgpu *vgpu, unsigned long gfn, unsigned long size, - dma_addr_t *dma_addr) -{ - return intel_gvt_host.mpt->dma_map_guest_page(vgpu, gfn, size, - dma_addr); -} - -/** - * intel_gvt_hypervisor_dma_unmap_guest_page - cancel dma map for guest page - * @vgpu: a vGPU - * @dma_addr: the mapped dma addr - */ -static inline void intel_gvt_hypervisor_dma_unmap_guest_page( - struct intel_vgpu *vgpu, dma_addr_t dma_addr) -{ - intel_gvt_host.mpt->dma_unmap_guest_page(vgpu, dma_addr); -} - /** * intel_gvt_hypervisor_dma_pin_guest_page - pin guest dma buf * @vgpu: a vGPU -- 2.30.2
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de> To: Jani Nikula <jani.nikula@linux.intel.com>, Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>, Zhenyu Wang <zhenyuw@linux.intel.com>, Zhi Wang <zhi.a.wang@intel.com> Cc: Jason Gunthorpe <jgg@nvidia.com>, intel-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH 21/29] drm/i915/gvt: devirtualize ->dma_{,un}map_guest_page Date: Tue, 2 Nov 2021 08:05:53 +0100 [thread overview] Message-ID: <20211102070601.155501-22-hch@lst.de> (raw) In-Reply-To: <20211102070601.155501-1-hch@lst.de> Just call the functions directly. Also remove a pointless wrapper. Signed-off-by: Christoph Hellwig <hch@lst.de> --- drivers/gpu/drm/i915/gvt/dmabuf.c | 10 ++-------- drivers/gpu/drm/i915/gvt/gtt.c | 20 +++++++++---------- drivers/gpu/drm/i915/gvt/gvt.h | 4 ++++ drivers/gpu/drm/i915/gvt/hypercall.h | 5 ----- drivers/gpu/drm/i915/gvt/kvmgt.c | 6 ++---- drivers/gpu/drm/i915/gvt/mpt.h | 29 ---------------------------- 6 files changed, 17 insertions(+), 57 deletions(-) diff --git a/drivers/gpu/drm/i915/gvt/dmabuf.c b/drivers/gpu/drm/i915/gvt/dmabuf.c index bc53a0c60b444..03d82f4f9aa2e 100644 --- a/drivers/gpu/drm/i915/gvt/dmabuf.c +++ b/drivers/gpu/drm/i915/gvt/dmabuf.c @@ -48,12 +48,6 @@ static int vgpu_pin_dma_address(struct intel_vgpu *vgpu, return ret; } -static void vgpu_unpin_dma_address(struct intel_vgpu *vgpu, - dma_addr_t dma_addr) -{ - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, dma_addr); -} - static int vgpu_gem_get_pages( struct drm_i915_gem_object *obj) { @@ -108,7 +102,7 @@ static int vgpu_gem_get_pages( for_each_sg(st->sgl, sg, i, j) { dma_addr = sg_dma_address(sg); if (dma_addr) - vgpu_unpin_dma_address(vgpu, dma_addr); + intel_gvt_dma_unmap_guest_page(vgpu, dma_addr); } sg_free_table(st); kfree(st); @@ -130,7 +124,7 @@ static void vgpu_gem_put_pages(struct drm_i915_gem_object *obj, int i; for_each_sg(pages->sgl, sg, fb_info->size, i) - vgpu_unpin_dma_address(vgpu, + intel_gvt_dma_unmap_guest_page(vgpu, sg_dma_address(sg)); } diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c index 3a7822bbf4570..ae65bd0ba480e 100644 --- a/drivers/gpu/drm/i915/gvt/gtt.c +++ b/drivers/gpu/drm/i915/gvt/gtt.c @@ -1011,7 +1011,7 @@ static inline void ppgtt_invalidate_pte(struct intel_vgpu_ppgtt_spt *spt, if (!pfn || pfn == vgpu->gtt.scratch_pt[type].page_mfn) return; - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); + intel_gvt_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); } static int ppgtt_invalidate_spt(struct intel_vgpu_ppgtt_spt *spt) @@ -1210,8 +1210,8 @@ static int split_2MB_gtt_entry(struct intel_vgpu *vgpu, return PTR_ERR(sub_spt); for_each_shadow_entry(sub_spt, &sub_se, sub_index) { - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, - start_gfn + sub_index, PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, start_gfn + sub_index, + PAGE_SIZE, &dma_addr); if (ret) { ppgtt_invalidate_spt(spt); return ret; @@ -1256,8 +1256,8 @@ static int split_64KB_gtt_entry(struct intel_vgpu *vgpu, ops->set_64k_splited(&entry); for (i = 0; i < GTT_64K_PTE_STRIDE; i++) { - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, - start_gfn + i, PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, start_gfn + i, + PAGE_SIZE, &dma_addr); if (ret) return ret; @@ -1311,8 +1311,7 @@ static int ppgtt_populate_shadow_entry(struct intel_vgpu *vgpu, } /* direct shadow */ - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, gfn, page_size, - &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, gfn, page_size, &dma_addr); if (ret) return -ENXIO; @@ -2243,8 +2242,7 @@ static void ggtt_invalidate_pte(struct intel_vgpu *vgpu, pfn = pte_ops->get_pfn(entry); if (pfn != vgpu->gvt->gtt.scratch_mfn) - intel_gvt_hypervisor_dma_unmap_guest_page(vgpu, - pfn << PAGE_SHIFT); + intel_gvt_dma_unmap_guest_page(vgpu, pfn << PAGE_SHIFT); } static int emulate_ggtt_mmio_write(struct intel_vgpu *vgpu, unsigned int off, @@ -2335,8 +2333,8 @@ static int emulate_ggtt_mmio_write(struct intel_vgpu *vgpu, unsigned int off, goto out; } - ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu, gfn, - PAGE_SIZE, &dma_addr); + ret = intel_gvt_dma_map_guest_page(vgpu, gfn, PAGE_SIZE, + &dma_addr); if (ret) { gvt_vgpu_err("fail to populate guest ggtt entry\n"); /* guest driver may read/write the entry when partial diff --git a/drivers/gpu/drm/i915/gvt/gvt.h b/drivers/gpu/drm/i915/gvt/gvt.h index 28e405e00fecd..727b276a29a21 100644 --- a/drivers/gpu/drm/i915/gvt/gvt.h +++ b/drivers/gpu/drm/i915/gvt/gvt.h @@ -766,6 +766,10 @@ void intel_gvt_debugfs_clean(struct intel_gvt *gvt); int intel_gvt_page_track_add(struct intel_vgpu *info, u64 gfn); int intel_gvt_page_track_remove(struct intel_vgpu *info, u64 gfn); +int intel_gvt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, + unsigned long size, dma_addr_t *dma_addr); +void intel_gvt_dma_unmap_guest_page(struct intel_vgpu *vgpu, + dma_addr_t dma_addr); #include "trace.h" #include "mpt.h" diff --git a/drivers/gpu/drm/i915/gvt/hypercall.h b/drivers/gpu/drm/i915/gvt/hypercall.h index ded13a63ab663..ba03b3368a955 100644 --- a/drivers/gpu/drm/i915/gvt/hypercall.h +++ b/drivers/gpu/drm/i915/gvt/hypercall.h @@ -46,11 +46,6 @@ struct intel_gvt_mpt { int (*host_init)(struct device *dev, void *gvt); void (*host_exit)(struct device *dev, void *gvt); - int (*dma_map_guest_page)(struct intel_vgpu *vgpu, unsigned long gfn, - unsigned long size, dma_addr_t *dma_addr); - void (*dma_unmap_guest_page)(struct intel_vgpu *vgpu, - dma_addr_t dma_addr); - int (*dma_pin_guest_page)(struct intel_vgpu *vgpu, dma_addr_t dma_addr); }; diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index 4795d7c223ad7..5a35d40f6afee 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c +++ b/drivers/gpu/drm/i915/gvt/kvmgt.c @@ -1856,7 +1856,7 @@ void intel_vgpu_detach_regions(struct intel_vgpu *vgpu) vgpu->region = NULL; } -static int kvmgt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, +int intel_gvt_dma_map_guest_page(struct intel_vgpu *vgpu, unsigned long gfn, unsigned long size, dma_addr_t *dma_addr) { struct gvt_dma *entry; @@ -1932,7 +1932,7 @@ static void __gvt_dma_release(struct kref *ref) __gvt_cache_remove_entry(entry->vgpu, entry); } -static void kvmgt_dma_unmap_guest_page(struct intel_vgpu *vgpu, +void intel_gvt_dma_unmap_guest_page(struct intel_vgpu *vgpu, dma_addr_t dma_addr) { struct gvt_dma *entry; @@ -1950,8 +1950,6 @@ static void kvmgt_dma_unmap_guest_page(struct intel_vgpu *vgpu, static const struct intel_gvt_mpt kvmgt_mpt = { .host_init = kvmgt_host_init, .host_exit = kvmgt_host_exit, - .dma_map_guest_page = kvmgt_dma_map_guest_page, - .dma_unmap_guest_page = kvmgt_dma_unmap_guest_page, .dma_pin_guest_page = kvmgt_dma_pin_guest_page, }; diff --git a/drivers/gpu/drm/i915/gvt/mpt.h b/drivers/gpu/drm/i915/gvt/mpt.h index d2723ac8bb044..26c1ee690f7e9 100644 --- a/drivers/gpu/drm/i915/gvt/mpt.h +++ b/drivers/gpu/drm/i915/gvt/mpt.h @@ -71,35 +71,6 @@ static inline void intel_gvt_hypervisor_host_exit(struct device *dev, void *gvt) intel_gvt_host.mpt->host_exit(dev, gvt); } -/** - * intel_gvt_hypervisor_dma_map_guest_page - setup dma map for guest page - * @vgpu: a vGPU - * @gfn: guest pfn - * @size: page size - * @dma_addr: retrieve allocated dma addr - * - * Returns: - * 0 on success, negative error code if failed. - */ -static inline int intel_gvt_hypervisor_dma_map_guest_page( - struct intel_vgpu *vgpu, unsigned long gfn, unsigned long size, - dma_addr_t *dma_addr) -{ - return intel_gvt_host.mpt->dma_map_guest_page(vgpu, gfn, size, - dma_addr); -} - -/** - * intel_gvt_hypervisor_dma_unmap_guest_page - cancel dma map for guest page - * @vgpu: a vGPU - * @dma_addr: the mapped dma addr - */ -static inline void intel_gvt_hypervisor_dma_unmap_guest_page( - struct intel_vgpu *vgpu, dma_addr_t dma_addr) -{ - intel_gvt_host.mpt->dma_unmap_guest_page(vgpu, dma_addr); -} - /** * intel_gvt_hypervisor_dma_pin_guest_page - pin guest dma buf * @vgpu: a vGPU -- 2.30.2
next prev parent reply other threads:[~2021-11-02 7:08 UTC|newest] Thread overview: 172+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-11-02 7:05 refactor the i915 GVT support and move to the modern mdev API v2 Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 7:05 ` [PATCH 01/29] drm/i915/gvt: undef TRACE_INCLUDE_FILE in i915_trace.h Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 7:05 ` [PATCH 02/29] drm/i915/gvt: integrate into the main Makefile Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 13:56 ` Jason Gunthorpe 2021-11-02 13:56 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 13:56 ` Jason Gunthorpe 2021-11-02 14:55 ` Jani Nikula 2021-11-02 14:55 ` Jani Nikula 2021-11-02 14:55 ` [Intel-gfx] " Jani Nikula 2021-11-04 12:30 ` Joonas Lahtinen 2021-11-04 12:30 ` [Intel-gfx] " Joonas Lahtinen 2021-11-04 12:30 ` Joonas Lahtinen 2021-11-04 12:32 ` Jason Gunthorpe 2021-11-04 12:32 ` [Intel-gfx] " Jason Gunthorpe 2021-11-04 12:32 ` Jason Gunthorpe 2021-11-09 7:56 ` Christoph Hellwig 2021-11-09 7:56 ` [Intel-gfx] " Christoph Hellwig 2021-11-09 7:55 ` Christoph Hellwig 2021-11-09 7:55 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 7:05 ` [PATCH 03/29] drm/i915/gvt: remove module refcounting in intel_gvt_{,un}register_hypervisor Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] [PATCH 03/29] drm/i915/gvt: remove module refcounting in intel_gvt_{, un}register_hypervisor Christoph Hellwig 2021-11-02 15:36 ` [PATCH 03/29] drm/i915/gvt: remove module refcounting in intel_gvt_{,un}register_hypervisor Jason Gunthorpe 2021-11-02 15:36 ` [Intel-gfx] [PATCH 03/29] drm/i915/gvt: remove module refcounting in intel_gvt_{, un}register_hypervisor Jason Gunthorpe 2021-11-02 15:36 ` [PATCH 03/29] drm/i915/gvt: remove module refcounting in intel_gvt_{,un}register_hypervisor Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 04/29] drm/i915/gvt: remove enum hypervisor_type Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 15:37 ` Jason Gunthorpe 2021-11-02 15:37 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 15:37 ` Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 05/29] drm/i915/gvt: rename intel_vgpu_ops to intel_vgpu_mdev_ops Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 15:37 ` Jason Gunthorpe 2021-11-02 15:37 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 15:37 ` Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 06/29] drm/i915/gvt: move the gvt code into kvmgt.ko Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-04 12:54 ` Joonas Lahtinen 2021-11-04 12:54 ` [Intel-gfx] " Joonas Lahtinen 2021-11-02 7:05 ` [PATCH 07/29] drm/i915/gvt: remove intel_gvt_ops Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:03 ` Jason Gunthorpe 2021-11-02 16:03 ` Jason Gunthorpe 2021-11-02 16:03 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 08/29] drm/i915/gvt: remove the map_gfn_to_mfn and set_trap_area ops Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:04 ` Jason Gunthorpe 2021-11-02 16:04 ` Jason Gunthorpe 2021-11-02 16:04 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 09/29] drm/i915/gvt: remove the unused from_virt_to_mfn op Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:04 ` Jason Gunthorpe 2021-11-02 16:04 ` Jason Gunthorpe 2021-11-02 16:04 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 10/29] drm/i915/gvt: merge struct kvmgt_vdev into struct intel_vgpu Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:05 ` Jason Gunthorpe 2021-11-02 16:05 ` Jason Gunthorpe 2021-11-02 16:05 ` Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 11/29] drm/i915/gvt: merge struct kvmgt_guest_info into strut intel_vgpu Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:06 ` Jason Gunthorpe 2021-11-02 16:06 ` Jason Gunthorpe 2021-11-02 16:06 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 12/29] drm/i915/gvt: remove vgpu->handle Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:07 ` Jason Gunthorpe 2021-11-02 16:07 ` Jason Gunthorpe 2021-11-02 16:07 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 13/29] drm/i915/gvt: devirtualize ->{read,write}_gpa Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] [PATCH 13/29] drm/i915/gvt: devirtualize ->{read, write}_gpa Christoph Hellwig 2021-11-02 16:08 ` [PATCH 13/29] drm/i915/gvt: devirtualize ->{read,write}_gpa Jason Gunthorpe 2021-11-02 16:08 ` Jason Gunthorpe 2021-11-02 16:08 ` [Intel-gfx] [PATCH 13/29] drm/i915/gvt: devirtualize ->{read, write}_gpa Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 14/29] drm/i915/gvt: devirtualize ->{get, put}_vfio_device Christoph Hellwig 2021-11-02 7:05 ` [PATCH 14/29] drm/i915/gvt: devirtualize ->{get,put}_vfio_device Christoph Hellwig 2021-11-02 16:12 ` Jason Gunthorpe 2021-11-02 16:12 ` Jason Gunthorpe 2021-11-02 16:12 ` [Intel-gfx] [PATCH 14/29] drm/i915/gvt: devirtualize ->{get, put}_vfio_device Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 15/29] drm/i915/gvt: devirtualize ->set_edid and ->set_opregion Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:12 ` Jason Gunthorpe 2021-11-02 16:12 ` Jason Gunthorpe 2021-11-02 16:12 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 16/29] drm/i915/gvt: devirtualize ->detach_vgpu Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:13 ` Jason Gunthorpe 2021-11-02 16:13 ` Jason Gunthorpe 2021-11-02 16:13 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 17/29] drm/i915/gvt: devirtualize ->inject_msi Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:13 ` Jason Gunthorpe 2021-11-02 16:13 ` Jason Gunthorpe 2021-11-02 16:13 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [PATCH 18/29] drm/i915/gvt: devirtualize ->is_valid_gfn Christoph Hellwig 2021-11-02 7:05 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:14 ` Jason Gunthorpe 2021-11-02 16:14 ` Jason Gunthorpe 2021-11-02 16:14 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 19/29] drm/i915/gvt: devirtualize ->gfn_to_mfn Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:14 ` Jason Gunthorpe 2021-11-02 16:14 ` Jason Gunthorpe 2021-11-02 16:14 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 20/29] drm/i915/gvt: devirtualize ->{enable, disable}_page_track Christoph Hellwig 2021-11-02 7:05 ` [PATCH 20/29] drm/i915/gvt: devirtualize ->{enable,disable}_page_track Christoph Hellwig 2021-11-02 16:15 ` [Intel-gfx] [PATCH 20/29] drm/i915/gvt: devirtualize ->{enable, disable}_page_track Jason Gunthorpe 2021-11-02 16:15 ` [PATCH 20/29] drm/i915/gvt: devirtualize ->{enable,disable}_page_track Jason Gunthorpe 2021-11-02 16:15 ` Jason Gunthorpe 2021-11-02 7:05 ` Christoph Hellwig [this message] 2021-11-02 7:05 ` [PATCH 21/29] drm/i915/gvt: devirtualize ->dma_{,un}map_guest_page Christoph Hellwig 2021-11-02 16:17 ` Jason Gunthorpe 2021-11-02 16:17 ` Jason Gunthorpe 2021-11-02 16:17 ` [Intel-gfx] [PATCH 21/29] drm/i915/gvt: devirtualize ->dma_{, un}map_guest_page Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 22/29] drm/i915/gvt: devirtualize dma_pin_guest_page Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:17 ` Jason Gunthorpe 2021-11-02 16:17 ` Jason Gunthorpe 2021-11-02 16:17 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 23/29] drm/i915/gvt: remove struct intel_gvt_mpt Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:18 ` Jason Gunthorpe 2021-11-02 16:18 ` Jason Gunthorpe 2021-11-02 16:18 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 24/29] drm/i915/gvt: remove the extra vfio_device refcounting for dmabufs Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:19 ` Jason Gunthorpe 2021-11-02 16:19 ` Jason Gunthorpe 2021-11-02 16:19 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 25/29] drm/i915/gvt: streamline intel_vgpu_create Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:19 ` Jason Gunthorpe 2021-11-02 16:19 ` Jason Gunthorpe 2021-11-02 16:19 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 26/29] drm/i915/gvt: pass a struct intel_vgpu to the vfio read/write helpers Christoph Hellwig 2021-11-02 7:05 ` Christoph Hellwig 2021-11-02 16:20 ` Jason Gunthorpe 2021-11-02 16:20 ` Jason Gunthorpe 2021-11-02 16:20 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 7:05 ` [Intel-gfx] [PATCH 27/29] drm/i915/gvt: remove kvmgt_guest_{init, exit} Christoph Hellwig 2021-11-02 7:05 ` [PATCH 27/29] drm/i915/gvt: remove kvmgt_guest_{init,exit} Christoph Hellwig 2021-11-02 16:36 ` Jason Gunthorpe 2021-11-02 16:36 ` Jason Gunthorpe 2021-11-02 16:36 ` [Intel-gfx] [PATCH 27/29] drm/i915/gvt: remove kvmgt_guest_{init, exit} Jason Gunthorpe 2021-11-02 7:06 ` [PATCH 28/29] drm/i915/gvt: convert to use vfio_register_group_dev() Christoph Hellwig 2021-11-02 7:06 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:41 ` Jason Gunthorpe 2021-11-02 16:41 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 16:41 ` Jason Gunthorpe 2021-11-03 6:40 ` Christoph Hellwig 2021-11-03 6:40 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 7:06 ` [PATCH 29/29] drm/i915/gvt: merge gvt.c into kvmgvt.c Christoph Hellwig 2021-11-02 7:06 ` [Intel-gfx] " Christoph Hellwig 2021-11-02 16:42 ` Jason Gunthorpe 2021-11-02 16:42 ` [Intel-gfx] " Jason Gunthorpe 2021-11-02 16:42 ` Jason Gunthorpe 2021-11-02 7:28 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for series starting with [01/29] drm/i915/gvt: undef TRACE_INCLUDE_FILE in i915_trace.h Patchwork 2021-11-04 12:59 ` refactor the i915 GVT support and move to the modern mdev API v2 Joonas Lahtinen 2021-11-04 12:59 ` Joonas Lahtinen 2021-11-04 12:59 ` [Intel-gfx] " Joonas Lahtinen 2021-11-04 14:51 ` Wang, Zhi A 2021-11-04 14:51 ` [Intel-gfx] " Wang, Zhi A 2021-11-04 14:51 ` Wang, Zhi A 2021-11-09 8:01 ` Christoph Hellwig 2021-11-09 8:01 ` [Intel-gfx] " Christoph Hellwig 2021-11-09 7:59 ` Christoph Hellwig 2021-11-09 7:59 ` [Intel-gfx] " Christoph Hellwig 2021-11-10 13:49 ` Joonas Lahtinen 2021-11-10 13:49 ` [Intel-gfx] " Joonas Lahtinen 2021-11-10 13:49 ` Joonas Lahtinen
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20211102070601.155501-22-hch@lst.de \ --to=hch@lst.de \ --cc=dri-devel@lists.freedesktop.org \ --cc=intel-gfx@lists.freedesktop.org \ --cc=intel-gvt-dev@lists.freedesktop.org \ --cc=jani.nikula@linux.intel.com \ --cc=jgg@nvidia.com \ --cc=joonas.lahtinen@linux.intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=rodrigo.vivi@intel.com \ --cc=zhenyuw@linux.intel.com \ --cc=zhi.a.wang@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.