Revision e3818697e1d9140d0b990fecf4429d40c41ca0b5 authored by Chris Wilson on 09 January 2017, 11:19:32 UTC, committed by Jani Nikula on 08 February 2017, 11:10:24 UTC
On a non-llc system, the objects are created with .cache_level =
CACHE_NONE and so the transition to uncached for scanout is a no-op.
However, if the object was never written to, it will still be in the CPU
domain (having been zeroed out by shmemfs). Those cachelines need to be
flushed prior to display.

Reported-and-tested-by: Vito Caputo
Fixes: a6a7cc4b7db6 ("drm/i915: Always flush the dirty CPU cache when pinning the scanout")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: <drm-intel-fixes@lists.freedesktop.org> # v4.10-rc1+
Link: http://patchwork.freedesktop.org/patch/msgid/20170109111932.6342-1-chris@chris-wilson.co.uk
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
(cherry picked from commit 69aeafeae9b30d797c439a30d1a4ccc8dc5b0eb0)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
1 parent 5351fbb
History
File Mode Size
crush
Kconfig -rw-r--r-- 1.1 KB
Makefile -rw-r--r-- 393 bytes
armor.c -rw-r--r-- 1.9 KB
auth.c -rw-r--r-- 7.4 KB
auth_none.c -rw-r--r-- 3.0 KB
auth_none.h -rw-r--r-- 464 bytes
auth_x.c -rw-r--r-- 19.6 KB
auth_x.h -rw-r--r-- 980 bytes
auth_x_protocol.h -rw-r--r-- 1.7 KB
buffer.c -rw-r--r-- 1.2 KB
ceph_common.c -rw-r--r-- 18.0 KB
ceph_fs.c -rw-r--r-- 2.5 KB
ceph_hash.c -rw-r--r-- 2.8 KB
ceph_strings.c -rw-r--r-- 1.2 KB
cls_lock_client.c -rw-r--r-- 8.8 KB
crypto.c -rw-r--r-- 7.8 KB
crypto.h -rw-r--r-- 1002 bytes
debugfs.c -rw-r--r-- 9.9 KB
messenger.c -rw-r--r-- 85.2 KB
mon_client.c -rw-r--r-- 32.2 KB
msgpool.c -rw-r--r-- 2.0 KB
osd_client.c -rw-r--r-- 116.5 KB
osdmap.c -rw-r--r-- 49.6 KB
pagelist.c -rw-r--r-- 3.6 KB
pagevec.c -rw-r--r-- 4.0 KB
snapshot.c -rw-r--r-- 2.2 KB
string_table.c -rw-r--r-- 2.2 KB

back to top