clear-pkgs-linux-iot-lts2018/1027-drm-i915-gvt-handles-e...

41 lines
1.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: He Min <min.he@intel.com>
Date: Fri, 8 Mar 2019 08:13:08 +0000
Subject: [PATCH] drm/i915/gvt: handles error when ioreq attach client fails
In case of device model crashes accidentally, VHM will not be
able to attach ioreq client, so acrngt needs to handle this
failure case.
Tracked-On: PKT-1797
Signed-off-by: He Min <min.he@intel.com>
Signed-off-by: Fengwei Yin <fengwei.yin@intel.com>
Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
---
drivers/gpu/drm/i915/gvt/acrngt.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/gvt/acrngt.c b/drivers/gpu/drm/i915/gvt/acrngt.c
index 0f1154c8c6a3..e27b53b165aa 100644
--- a/drivers/gpu/drm/i915/gvt/acrngt.c
+++ b/drivers/gpu/drm/i915/gvt/acrngt.c
@@ -237,7 +237,14 @@ static int acrngt_emulation_thread(void *priv)
set_freezable();
while (1) {
- acrn_ioreq_attach_client(info->client, 1);
+ ret = acrn_ioreq_attach_client(info->client, 1);
+
+ if (ret) {
+ gvt_err("error while attach ioreq client %d\n", ret);
+ info->client = 0;
+ info->emulation_thread = NULL;
+ return 0;
+ }
if (kthread_should_stop())
return 0;
--
https://clearlinux.org