projects
/
linux
/
.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
5f5800a
)
drm/i915/ringbuffer: EMIT_INVALIDATE after switch context
author
Chris Wilson
<chris@chris-wilson.co.uk>
Fri, 7 Dec 2018 09:02:12 +0000
(09:02 +0000)
committer
Chris Wilson
<chris@chris-wilson.co.uk>
Fri, 7 Dec 2018 12:12:52 +0000
(12:12 +0000)
The recommend procedure was to switch contexts (and mm) then invalidate
the TLBs. Make it so.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link:
https://patchwork.freedesktop.org/patch/msgid/20181207090213.14352-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/intel_ringbuffer.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/intel_ringbuffer.c
b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 16084749adf5438a19b92d3fceb16c72754d8362..74a4d587c3129b9d8a91d15c8ba3cc7d94927077 100644
(file)
--- a/
drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/
drivers/gpu/drm/i915/intel_ringbuffer.c
@@
-1827,12
+1827,12
@@
static int ring_request_alloc(struct i915_request *request)
*/
request->reserved_space += LEGACY_REQUEST_SIZE;
- /* Unconditionally invalidate GPU caches and TLBs. */
- ret = request->engine->emit_flush(request, EMIT_INVALIDATE);
+ ret = switch_context(request);
if (ret)
return ret;
- ret = switch_context(request);
+ /* Unconditionally invalidate GPU caches and TLBs. */
+ ret = request->engine->emit_flush(request, EMIT_INVALIDATE);
if (ret)
return ret;