]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Write GPU relocs harder with gen3
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 19 Nov 2018 15:41:53 +0000 (15:41 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 20 Nov 2018 09:50:21 +0000 (09:50 +0000)
commita31b4f28ba1f939e9307cf0b97880aef81d9c50b
treeb299bb32490efe6ef1a9671a408ccd5891c9c160
parent2244e88a5b53bfbb49275fbead5ecd6c70bd26e2
drm/i915: Write GPU relocs harder with gen3

Under moderate amounts of GPU stress, we can observe on Bearlake and
Pineview (later gen3 models) that we execute the following batch buffer
before the write into the batch is coherent. Adding extra (tested with
upto 32x) MI_FLUSH to either the invalidation, flush or both phases does
not solve the incoherency issue with the relocations, but emitting the
MI_STORE_DWORD_IMM twice does. So be it.

Fixes: a155bfac9fd5 ("drm/i915: Async GPU relocation processing")
Testcase: igt/gem_tiled_fence_blits # blb/pnv
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181119154153.15327-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem_execbuffer.c