[PATCH] drm/i915/gvt: Fix one klocwork issue about pointer engine

hang.yuan at linux.intel.com hang.yuan at linux.intel.com
Mon Sep 6 09:10:23 UTC 2021


From: Hang Yuan <hang.yuan at linux.intel.com>

Pointer 'engine' returned from 'intel_gvt_render_mmio_to_engine' may
be NULL. Add a pointer check to avoid deference from it later.

Signed-off-by: Hang Yuan <hang.yuan at linux.intel.com>
---
 drivers/gpu/drm/i915/gvt/handlers.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/gvt/handlers.c b/drivers/gpu/drm/i915/gvt/handlers.c
index cde0a47..2f5e76a 100644
--- a/drivers/gpu/drm/i915/gvt/handlers.c
+++ b/drivers/gpu/drm/i915/gvt/handlers.c
@@ -2016,6 +2016,11 @@ static int ring_mode_mmio_write(struct intel_vgpu *vgpu, unsigned int offset,
 	bool enable_execlist;
 	int ret;
 
+	if (unlikely(!engine)) {
+		enter_failsafe_mode(vgpu, GVT_FAILSAFE_UNSUPPORTED_GUEST);
+		return 0;
+	}
+
 	(*(u32 *)p_data) &= ~_MASKED_BIT_ENABLE(1);
 	if (IS_COFFEELAKE(vgpu->gvt->gt->i915) ||
 	    IS_COMETLAKE(vgpu->gvt->gt->i915))
-- 
2.7.4



More information about the intel-gvt-dev mailing list