submisison pv mode to improve efficiency.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 1 +
drivers/gpu/drm/i915/gvt/handlers.c | 102
drivers/gpu/drm/i915/gvt/vgpu.c | 1 +
3 files changed, 104 insertions(+)
diff --git a/drivers
This patch is to handle ppgtt PV_CMD_BIND_GGTT and PV_CMD_UNBIND_GGTT
for pv ggtt, it is operated (bind/unbind) per vma instead of per ggtt
entry mmio update to improve efficiency
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 83
struct pv_vma from guest to GVT
and then GVT will implement command handler of PV_CMD_BIND_PPGTT and
PV_CMD_UBIND_PPGTT to support vgpu PPGTT feature.
new PV_PPGTT pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
Jani Nikula and dim checkpatch issues.
Xiaolin Zhang (12):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv support
drm/i915: vgpu pv command buffer transport protocol
drm/i915: vgpu ppgtt page table pv support
drm/i915: vgpu ggtt page table pv support
drm
between guest and host.
it also adds VGT_CAPS_PV capability BIT useb by guest to query host GVTg
whether support any PV feature or not.
v2: addressed dim checkpatch issues and Jani Nikula's comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 1 +
drivers/gpu/drm
expose pv_caps PVINFO register from GVTg to guest in order that guest can
query and control different pv capability support.
report VGT_CAPS_PV capability in pvinfo page for guest.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8
drivers/gpu/drm/i915/gvt
PV data to host to perform PV
commands in host side.
v2: addressed dim checkpatch issues and Jani Nikula's comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_pvinfo.h | 1 +
drivers/gpu/drm/i915/i915_vgpu.c | 202 -
drivers/gpu/drm
GVTg implemented guest shared_page register operation and read and write
shared_page functionality based on hypervisor read and write functionality.
the shared_page_gpa was passed from guest driver through PVINFO
shared_page_gpa register.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
host side to implement vgpu PV CTB protocol. based on the protocol,
CTB read functionality is implemented to handle pv command from guest.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 118 +++-
1 file changed, 117 insertions(+), 1
PPGTT shadow page mechansim.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 175
drivers/gpu/drm/i915/gvt/gtt.h | 4 +
drivers/gpu/drm/i915/gvt/gvt.h | 1 +
drivers/gpu/drm/i915/gvt/handlers.c | 25 ++
drivers/gpu/drm
struct pv_vma from guest to GVT and then GVT will
implement command handler of PV_CMD_BIND_GGTT and PV_CMD_UBIND_gGTT to
support vgpu GGTT feature.
new PV_GGTT pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
PV_SUBMISSION pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 2 +
drivers/gpu/drm/i915/i915_vgpu.c | 68 +-
drivers/gpu/drm/i915
the first part is the
PV vervsion information used for compabilty support.
v2: addressed dim checkpatch issues and Jani Nikula's comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.c| 2 +
drivers/gpu/drm/i915/i915_drv.h| 2 +
drivers/gpu/drm/i915/i91
submisison pv mode to improve efficiency.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 1 +
drivers/gpu/drm/i915/gvt/handlers.c | 101
drivers/gpu/drm/i915/gvt/vgpu.c | 1 +
3 files changed, 103 insertions(+)
diff --git a/drivers
PV data to host to perform PV
commands in host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_pvinfo.h | 1 +
drivers/gpu/drm/i915/i915_vgpu.c | 195 -
drivers/gpu/drm/i915/i915_vgpu.h | 53 ++
3 files changed, 247 insertions
struct pv_vma from guest to GVT and then GVT will
implement command handler of PV_CMD_BIND_GGTT and PV_CMD_UBIND_gGTT to
support vgpu GGTT feature.
new PV_GGTT pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
struct pv_vma from guest to GVT
and then GVT will implement command handler of PV_CMD_BIND_PPGTT and
PV_CMD_UBIND_PPGTT to support vgpu PPGTT feature.
new PV_PPGTT pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
This patch is to handle ppgtt PV_CMD_BIND_GGTT and PV_CMD_UNBIND_GGTT
for pv ggtt, it is operated (bind/unbind) per vma instead of per ggtt
entry mmio update to improve efficiency
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 83
the first part is the
PV vervsion information used for compabilty support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.c| 2 +
drivers/gpu/drm/i915/i915_drv.h| 4 +-
drivers/gpu/drm/i915/i915_pvinfo.h | 5 +-
drivers/gpu/drm/i915/i915_vgp
between guest and host.
it also adds VGT_CAPS_PV capability BIT useb by guest to query host GVTg
whether support any PV feature or not.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_debugfs.c | 3 ++
drivers/gpu/drm/i915/i915_drv.h | 1 +
drivers/gpu/drm/i915/i915_pvinfo.h | 5
host side to implement vgpu PV CTB protocol. based on the protocol,
CTB read functionality is implemented to handle pv command from guest.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 119 +++-
1 file changed, 118 insertions(+), 1
GVTg implemented guest shared_page register operation and read and write
shared_page functionality based on hypervisor read and write functionality.
the shared_page_gpa was passed from guest driver through PVINFO
shared_page_gpa register.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
PV_SUBMISSION pv_cap is used to control this level of pv support in
both guest and host side.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 2 +
drivers/gpu/drm/i915/i915_vgpu.c | 67 +-
drivers/gpu/drm/i915
expose pv_caps PVINFO register from GVTg to guest in order that guest can
query and control different pv capability support.
report VGT_CAPS_PV capability in pvinfo page for guest.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8
drivers/gpu/drm/i915/gvt
PPGTT shadow page mechansim.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 172
drivers/gpu/drm/i915/gvt/gtt.h | 4 +
drivers/gpu/drm/i915/gvt/gvt.h | 1 +
drivers/gpu/drm/i915/gvt/handlers.c | 25 ++
drivers/gpu/drm
experiment, small workloads such as glmark2 and Antutu 3D
benchmark can get benefit for these PV featuers at least 10% performance
gain. for large workload such as media and 3D, it get some benefit,
but not much.
[1]: https://patchwork.kernel.org/cover/11148059/
Xiaolin Zhang (12):
drm/i915:
support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 298
drivers/gpu/drm/i915/gvt/gtt.h | 11 ++
drivers/gpu/drm/i915/gvt/gvt.h | 4 +
drivers/gpu/drm/i915/gvt/handlers.c | 127 ++-
drivers/gpu/drm/i915/gvt
ssion comments.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/execlist.c | 6 ++
drivers/gpu/drm/i915/gvt/handlers.c | 30 +-
drivers/gpu/drm/i915/gvt/vgpu.c | 2 ++
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i91
based on the shared memory setup between guest and GVT, the simple
pv command buffer ring was introduced by this patch used to perform
guest-2-gvt single direction communication.
v1: initial support, added to address i915 PV v6 patch set comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu
pv_caps.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index
, return zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase.
v5: rebase.
v6: rebase, added PV version support.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8 ++-
drivers/gpu/drm/i915/gvt/handlers.c | 20 +
drivers/gpu
when using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
id by hw_id.
v7: rebase.
v8: addressed v7 comments from Chris.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 12 +-
drivers/gpu/drm/i915/i915_vgpu.c | 18 +-
drivers/gpu/drm/i915/i915_vgpu.h
ion for pv shared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c.
v5: per engine desc data in shared memory.
v6: added version support in shared memory (Zhenyu).
v7: added new function i915_destroy_vgpu to free shared memory.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/
: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_debugfs.c | 2 ++
drivers/gpu/drm/i915/i915_drv.h | 2 ++
drivers/gpu/drm/i915/i915_pvinfo.h | 5 -
drivers/gpu/drm/i915/i915_vgpu.c| 43 -
drivers/gpu/drm/i915/i915_vgpu.h| 9
5 files
ed by the PV patches.
Xiaolin Zhang (9):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv optimization
drm/i915: vgpu pv command buffer support
drm/i915: vgpu ppgtt update pv optimization
drm/i915: vgpu context submission pv optimization
drm/i915/gvt:
is easy to enter race condition state during the MTBF, stress and
IGT test to cause GPU hang.
the solution is to add a lock to make vgpu ppgtt notication as atomic
operation.
Cc: sta...@vger.kernel.org
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h | 1 +
drivers/gp
is easy to enter race condition state during the MTBF, stress and
IGT test to cause GPU hang.
the solution is to add a lock to make vgpu ppgtt notication as atomic
operation.
Cc: sta...@vger.kernel.org
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h | 1 +
drivers/gp
, return zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase.
v5: rebase.
v6: rebase, added PV version support.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8 ++-
drivers/gpu/drm/i915/gvt/handlers.c | 20 +
drivers/gpu
: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_debugfs.c | 2 ++
drivers/gpu/drm/i915/i915_drv.h | 2 ++
drivers/gpu/drm/i915/i915_pvinfo.h | 5 -
drivers/gpu/drm/i915/i915_vgpu.c| 43 -
drivers/gpu/drm/i915/i915_vgpu.h| 9
5 files
ssion comments.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/execlist.c | 6 ++
drivers/gpu/drm/i915/gvt/handlers.c | 30 +-
drivers/gpu/drm/i915/gvt/vgpu.c | 2 ++
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i91
id by hw_id.
v7: rebase.
v8: addressed v7 comments from Chris.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 12 +-
drivers/gpu/drm/i915/i915_vgpu.c | 18 ++-
drivers/gpu/drm/i915/i915_vgpu.h
pv_caps.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index
_vgpu.
Xiaolin Zhang (9):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv optimization
drm/i915: vgpu pv command buffer support
drm/i915: vgpu ppgtt update pv optimization
drm/i915: vgpu context submission pv optimization
drm/i915/gvt: GVTg handle pv_caps P
support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 298
drivers/gpu/drm/i915/gvt/gtt.h | 11 ++
drivers/gpu/drm/i915/gvt/gvt.h | 4 +
drivers/gpu/drm/i915/gvt/handlers.c | 127 ++-
drivers/gpu/drm/i915/gvt
when using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
based on the shared memory setup between guest and GVT, the simple
pv command buffer ring was introduced by this patch used to perform
guest-2-gvt single direction communication.
v1: initial support, added to address i915 PV v6 patch set comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu
ion for pv shared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c.
v5: per engine desc data in shared memory.
v6: added version support in shared memory (Zhenyu).
v7: added new function i915_destroy_vgpu to free shared memory.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/
, return zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase.
v5: rebase.
v6: rebase, added PV version support.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8 ++-
drivers/gpu/drm/i915/gvt/handlers.c | 20 +
drivers/gpu
when using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
pv_caps.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index
support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 298
drivers/gpu/drm/i915/gvt/gtt.h | 11 ++
drivers/gpu/drm/i915/gvt/gvt.h | 4 +
drivers/gpu/drm/i915/gvt/handlers.c | 127 ++-
drivers/gpu/drm/i915/gvt
ssion comments.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/execlist.c | 6 ++
drivers/gpu/drm/i915/gvt/handlers.c | 30 +-
drivers/gpu/drm/i915/gvt/vgpu.c | 2 ++
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i91
based on the shared memory setup between guest and GVT, the simple
pv command buffer ring was introduced by this patch used to perform
guest-2-gvt single direction communication.
v1: initial support, added to address i915 PV v6 patch set comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu
id by hw_id.
v7: rebase.
v8: addressed v7 comments from Chris.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 12 +-
drivers/gpu/drm/i915/i915_vgpu.c | 18 ++-
drivers/gpu/drm/i915/i915_vgpu.h
ion for pv shared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c.
v5: per engine desc data in shared memory.
v6: added version support in shared memory (Zhenyu).
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 4 +-
drivers/gpu/drm/i915/i915_pvi
henyu for PV version support.
v7:
1. addessed v6 review comments from Chris starting to use pv cmd buffer
communication between pv guest and GVT.
v8: addressed v7 review comments from Chris to refine pv submssion code.
Xiaolin Zhang (9):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu s
.
v3: distinct pv caps from guest and host. renamed enable_pvmmio to
pvmmio_caps which is used for host pv caps.
v4: consolidated all pv related functons into a single file i915_vgpu.c
and renamed pvmmio to pv_caps.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu
support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gtt.c | 295
drivers/gpu/drm/i915/gvt/gtt.h | 11 ++
drivers/gpu/drm/i915/gvt/gvt.h | 4 +
drivers/gpu/drm/i915/gvt/handlers.c | 127 +++-
drivers/gpu/drm/i915/gvt
, return zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase.
v5: rebase.
v6: rebase, added PV version support.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8 ++-
drivers/gpu/drm/i915/gvt/handlers.c | 20 +
drivers/gpu
.
v3: distinct pv caps from guest and host. renamed enable_pvmmio to
pvmmio_caps which is used for host pv caps.
v4: consolidated all pv related functons into a single file i915_vgpu.c
and renamed pvmmio to pv_caps.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu
based on the shared memory setup between guest and GVT, the simple
pv command buffer ring was introduced by this patch used to perform
guest-2-gvt single direction communication.
v1: initial added to address i915 PV v6 patch set comment.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
pv_caps.
v5: rebase.
v6: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index
ion for pv shared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c.
v5: per engine desc data in shared memory.
v6: added version support in shared memory (Zhenyu).
v7: rebased.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 4 +-
drivers/gpu/drm/i915/i915_pvi
u for PV version support.
v7:
1. addessed v5 review comment from Chris starting to use pv cmd buffer
communication between pv guest and GVT.
Xiaolin Zhang (9):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv optimization
drm/i915: vgpu pv command buffer su
: rebase.
v2: rebase.
v3: report pv context submission cap and handle VGT_G2V_ELSP_SUBMIT
g2v pv notification.
v4: eliminate execlist HW emulation and don't inject context switch
interrupt to guest under PV submisison mechanism.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin
gine id by hw_id.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 8 +-
drivers/gpu/drm/i915/i915_vgpu.c | 15 ++-
drivers/gpu/drm/i915/i915_vgpu.h | 15 +++
drivers/gpu/drm/i915
when using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase.
v6: rebase.
v7: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
: rebase.
v2: rebase.
v3: report pv context submission cap and handle VGT_G2V_ELSP_SUBMIT
g2v pv notification.
v4: eliminate execlist HW emulation and don't inject context switch
interrupt to guest under PV submisison mechanism.
v5: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
---
driver
ion for pv shared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c.
v5: per engine desc data in shared memory.
v6: added version support in shared memory (Zhenyu).
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 3 ++-
drivers/gpu/drm/i915/i915_pvinfo.h | 5 +++
, return zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase.
v5: rebase.
v6: rebase, added PV version support.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 8 ++-
drivers/gpu/drm/i915/gvt/handlers.c | 20 +
drivers/gpu/drm/i915
u for PV version support.
Xiaolin Zhang (8):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv optimization
drm/i915: vgpu ppgtt update pv optimization
drm/i915: vgpu context submission pv optimization
drm/i915/gvt: GVTg handle pv_caps PVINFO register
drm
when using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
.
v3: distinct pv caps from guest and host. renamed enable_pvmmio to
pvmmio_caps which is used for host pv caps.
v4: consolidated all pv related functons into a single file i915_vgpu.c
and renamed pvmmio to pv_caps.
v5: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
id by hw_id.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/Makefile | 2 +-
drivers/gpu/drm/i915/gt/intel_lrc.c| 8 +-
drivers/gpu/drm/i915/i915_pvinfo.h | 1 +
drivers/gpu/drm/i915/i915_vgpu.c | 8 +-
drivers/gpu/drm/i915/i915_vgpu.h
pv_caps.
v5: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index 7732caa
removes the cost of write
protection from the original shadow page mechansim.
v0: RFC.
v1: rebase.
v2: rebase.
v3: report pv pggtt cap to guest.
v4: renamed VGPU_PVMMIO with VGPU_PVCAP for name consistance, no PV
support if gfx vtd enabled.
v5: rebase.
v6: rebase.
Signed-off-by: Xiaolin Zhang
removes the cost of write
protection from the original shadow page mechansim.
v0: RFC
v1: rebase
v2: rebase
v3: report pv pggtt cap to guest
v4: renamed VGPU_PVMMIO with VGPU_PVCAP for name consistance, no PV
support if gfx vtd enabled.
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
pv_caps
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index 18f01ee..f7ecd4e 100644
--- a
plemented pv elsp submission tasklet as the backend workload
submisison by talking to GVT with PV notificaiton mechanism and renamed
VGT_G2V_ELSP_SUBMIT to VGT_G2V_PV_SUBMISIION.
v5: addressed v4 comments from Chris, intel_pv_submission.c added.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915
hared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c
v5: per engine desc data in shared memory
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 4 +++-
drivers/gpu/drm/i915/i915_pvinfo.h | 5 -
drivers/gpu/drm/i915/i915_vgp
using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_gem.c | 3
: rebase
v2: rebase
v3: report pv context submission cap and handle VGT_G2V_ELSP_SUBMIT
g2v pv notification.
v4: eliminate execlist HW emulation and don't inject context switch
interrupt to guest under PV submisison mechanism.
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i91
v3: distinct pv caps from guest and host. renamed enable_pvmmio to
pvmmio_caps which is used for host pv caps.
v4: consolidated all pv related functons into a single file i915_vgpu.c
and renamed pvmmio to pv_caps.
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h
zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase
v5: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 6 +-
drivers/gpu/drm/i915/gvt/handlers.c | 15 +++
drivers/gpu/drm/i915/gvt/vgpu.c | 24
3
skip execlists HW behaviour emulation
and context switch interrupt injection.
v5:
1. addressed v4 review comments from Chris for pv submission.
2. per-engine communication between PV guest and host.
Xiaolin Zhang (8):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup f
pv_caps
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/handlers.c | 4
drivers/gpu/drm/i915/gvt/vgpu.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/gvt/handlers.c
b/drivers/gpu/drm/i915/gvt/handlers.c
index 63418c8..0333652 100644
--- a/drivers
removes the cost of write
protection from the original shadow page mechansim.
v0: RFC
v1: rebase
v2: rebase
v3: report pv pggtt cap to guest
v4: renamed VGPU_PVMMIO with VGPU_PVCAP for name consistance, no PV
support if gfx vtd enabled.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt
: rebase
v2: rebase
v3: report pv context submission cap and handle VGT_G2V_ELSP_SUBMIT
g2v pv notification.
v4: eliminate execlist HW emulation and don't inject context switch
interrupt to guest under PV submisison mechanism.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/execl
zero
memory and handle VGT_G2V_SHARED_PAGE_SETUP g2v notification
v4: rebase
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 6 +-
drivers/gpu/drm/i915/gvt/handlers.c | 15 +++
drivers/gpu/drm/i915/gvt/vgpu.c | 24
3 files
plemented pv elsp submission tasklet as the backend workload
submisison by talking to GVT with PV notificaiton mechanism and renamed
VGT_G2V_ELSP_SUBMIT to VGT_G2V_PV_SUBMISIION.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_irq.c| 2 +
drivers/gpu/drm/i915/i915_pvinfo.h |
using PVMMIO ppgtt
update due to complex and performance impact.
v4: moved alloc/insert/clear_4lvl pv callbacks into i915_vgpu_pv.c and
added a single intel_vgpu_config_pv_caps() for vgpu pv callbacks setup.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_gem.c | 3 +-
drivers
skip execlists HW behaviour emulation
and context switch interrupt injection.
Xiaolin Zhang (8):
drm/i915: introduced vgpu pv capability
drm/i915: vgpu shared memory setup for pv optimization
drm/i915: vgpu ppgtt update pv optimization
drm/i915: vgpu context submission pv optimization
drm/i91
hared_page setup
v4: added intel_vgpu_setup_shared_page() in i915_vgpu_pv.c
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 4 +++-
drivers/gpu/drm/i915/i915_pvinfo.h | 5 -
drivers/gpu/drm/i915/i915_vgpu.c | 38 ++
drivers/gp
: rebase
v3: distinct pv caps from guest and host. renamed enable_pvmmio to
pvmmio_caps which is used for host pv caps.
v4: consolidated all pv related functons into a single file i915_vgpu.c
and renamed pvmmio to pv_caps.
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 2
pv notification.
Cc: Zhenyu Wang
Cc: Zhi Wang
Cc: Min He
Cc: Fei Jiang
Cc: Zhipeng Gong
Cc: Hang Yuan
Cc: Zhiyuan Lv
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 4
drivers/gpu/drm/i915/gvt/handlers.c | 39 -
drivers/gpu
removes the cost of write
protection from the original shadow page mechansim.
v0: RFC
v1: rebase
v2: rebase
v3: report pv pggtt cap to guest
Cc: Zhenyu Wang
Cc: Zhi Wang
Cc: Min He
Cc: Fei Jiang
Cc: Zhipeng Gong
Cc: Hang Yuan
Cc: Zhiyuan Lv
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm
: Chris Wilson
Cc: Joonas Lahtinen
Cc: He Min
Cc: Jiang Fei
Cc: Gong Zhipeng
Cc: Yuan Hang
Cc: Zhiyuan Lv
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/i915_drv.h| 11 +++
drivers/gpu/drm/i915/i915_pvinfo.h | 16 +++-
drivers/gpu/drm/i915/i915_vgpu.c | 23
l_gpu structure
v2: packed i915_virtual_gpu structure
v3: added SHARED_PAGE_SETUP g2v notification for pv shared_page setup
Cc: Zhenyu Wang
Cc: Zhi Wang
Cc: Chris Wilson
Cc: Joonas Lahtinen
Cc: He Min
Cc: Jiang Fei
Cc: Gong Zhipeng
Cc: Yuan Hang
Cc: Zhiyuan Lv
Signed-off-by: Xiaolin
Cc: Zhi Wang
Cc: Min He
Cc: Fei Jiang
Cc: Zhipeng Gong
Cc: Hang Yuan
Cc: Zhiyuan Lv
Signed-off-by: Xiaolin Zhang
---
drivers/gpu/drm/i915/gvt/gvt.h | 3 +++
drivers/gpu/drm/i915/gvt/handlers.c | 7 ---
drivers/gpu/drm/i915/gvt/vgpu.c | 4
3 files changed, 11 insertions
1 - 100 of 135 matches
Mail list logo