summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/gvt/execlist.h
diff options
context:
space:
mode:
authorDu, Changbin <changbin.du@intel.com>2016-11-11 16:33:06 +0800
committerZhenyu Wang <zhenyuw@linux.intel.com>2016-11-14 18:06:43 +0800
commit0427f06aec4222e0712b2efba1ac60ff56a1c336 (patch)
tree405d86dd8f7a560192e1d43694fb663dec6c50e5 /drivers/gpu/drm/i915/gvt/execlist.h
parent4f3f1aed4b8040f2a7a55561762470f942be2740 (diff)
downloadlinux-0427f06aec4222e0712b2efba1ac60ff56a1c336.tar.bz2
drm/i915/gvt: fix crash in vgpu_reset_execlist
We initiate vgpu->workload_q_head via for_each_engine macro which may skip unavailable engines. So we should follow this rule anywhere. The function intel_vgpu_reset_execlist is not aware of this. Kernel crash when touch a uninitiated vgpu->workload_q_head[x]. Let's fix it by using for_each_engine_masked and skip unavailable engine ID. Meanwhile rename ring_bitmap to general name engine_mask. v2: remove unnecessary engine activation check (zhenyu) Signed-off-by: Du, Changbin <changbin.du@intel.com> Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/gvt/execlist.h')
-rw-r--r--drivers/gpu/drm/i915/gvt/execlist.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/gvt/execlist.h b/drivers/gpu/drm/i915/gvt/execlist.h
index 635f31c6dcc1..7eced40a1e30 100644
--- a/drivers/gpu/drm/i915/gvt/execlist.h
+++ b/drivers/gpu/drm/i915/gvt/execlist.h
@@ -183,6 +183,6 @@ int intel_vgpu_init_execlist(struct intel_vgpu *vgpu);
int intel_vgpu_submit_execlist(struct intel_vgpu *vgpu, int ring_id);
void intel_vgpu_reset_execlist(struct intel_vgpu *vgpu,
- unsigned long ring_bitmap);
+ unsigned long engine_mask);
#endif /*_GVT_EXECLIST_H_*/