drm/i915: Flush the WCB following a WC write
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Jul 2018 11:54:02 +0000 (12:54 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Jul 2018 13:05:23 +0000 (14:05 +0100)
commitadd00e6d896fab882e6115ed4908b2456f1b3a85
treeeb79165a839f4ad807a463d3525cdf757e1387e5
parent03bbc508a312d9f4833f1cb0f7b2da7517787b61
drm/i915: Flush the WCB following a WC write

If we have just completed a WC write, we must ensure that the WCB (Write
Combining Buffer) is flushed out to main memory before we can expect to
see the results. This is especially important when mixing WC with GTT as
the physical paths are different and cachelines are not naturally flushed.

Testcase: igt/drv_selftests/live_coherency #gdg
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180706115402.18547-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem.c