projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
03380d1
)
drm/i915: Specify which engines to reset following semaphore/event lockups
author
Chris Wilson
<
[email protected]
>
Tue, 20 Mar 2018 10:04:48 +0000
(10:04 +0000)
committer
Chris Wilson
<
[email protected]
>
Tue, 20 Mar 2018 14:55:58 +0000
(14:55 +0000)
If the GPU is stuck waiting for an event or for a semaphore, we need to
reset the GPU in order to recover. We have to tell the reset routine
which engines we want reset, but we were still using the old interface
and declaring it as "not-fatal".
Fixes: 14b730fcb8d9 ("drm/i915/tdr: Prepare error handler to accept mask of hung engines")
Signed-off-by: Chris Wilson <
[email protected]
>
Cc: Mika Kuoppala <
[email protected]
>
Cc: Michel Thierry <
[email protected]
>
Reviewed-by: Michel Thierry <
[email protected]
>
Link:
https://patchwork.freedesktop.org/patch/msgid/
[email protected]
drivers/gpu/drm/i915/intel_hangcheck.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/intel_hangcheck.c
b/drivers/gpu/drm/i915/intel_hangcheck.c
index 42e45ae873933fd4ca358ba1bb48535dc57340f5..c8ea510629fa78262418651f9dbd7ba57ef1c936 100644
(file)
--- a/
drivers/gpu/drm/i915/intel_hangcheck.c
+++ b/
drivers/gpu/drm/i915/intel_hangcheck.c
@@
-246,7
+246,7
@@
engine_stuck(struct intel_engine_cs *engine, u64 acthd)
*/
tmp = I915_READ_CTL(engine);
if (tmp & RING_WAIT) {
- i915_handle_error(dev_priv,
0
,
+ i915_handle_error(dev_priv,
BIT(engine->id)
,
"Kicking stuck wait on %s",
engine->name);
I915_WRITE_CTL(engine, tmp);
@@
-258,7
+258,7
@@
engine_stuck(struct intel_engine_cs *engine, u64 acthd)
default:
return ENGINE_DEAD;
case 1:
- i915_handle_error(dev_priv,
0
,
+ i915_handle_error(dev_priv,
ALL_ENGINES
,
"Kicking stuck semaphore on %s",
engine->name);
I915_WRITE_CTL(engine, tmp);