alistair23-linux/include/uapi/drm
Chris Wilson e22d8e3c69 drm/i915: Treat WC a separate cache domain
When discussing a new WC mmap, we based the interface upon the
assumption that GTT was fully coherent. How naive! Commits 3b5724d702
("drm/i915: Wait for writes through the GTT to land before reading
back") and ed4596ea99 ("drm/i915/guc: WA to address the Ringbuffer
coherency issue") demonstrate that writes through the GTT are indeed
delayed and may be overtaken by direct WC access. To be safe, if
userspace is mixing WC mmaps with other potential GTT access (pwrite,
GTT mmaps) it should use set_domain(WC).

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96563
Testcase: igt/gem_pwrite/small-gtt*
Testcase: igt/drv_selftest/coherency
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170412110111.26626-2-chris@chris-wilson.co.uk
2017-04-12 12:35:17 +01:00
..
amdgpu_drm.h uapi/drm:add new flag for Preemption 2017-03-29 23:55:37 -04:00
armada_drm.h
drm.h drm: Pass CRTC ID in userspace vblank events 2017-04-04 20:59:12 +01:00
drm_fourcc.h drm: add RGB formats with separate alpha plane 2017-03-15 15:42:30 +01:00
drm_mode.h drm: Add a new connector atomic property for link status 2017-02-27 10:24:25 +01:00
drm_sarea.h
etnaviv_drm.h drm/etnaviv: submit support for out-fences 2017-03-29 16:23:25 +02:00
exynos_drm.h
i810_drm.h drm/i810: add extern C guard for the UAPI header 2016-05-13 14:05:17 +01:00
i915_drm.h drm/i915: Treat WC a separate cache domain 2017-04-12 12:35:17 +01:00
Kbuild drm: Kbuild: add omap_drm.h to the installed headers 2016-12-19 11:24:48 +02:00
mga_drm.h drm/mga: add extern C guard for the UAPI header 2016-05-13 14:06:07 +01:00
msm_drm.h drm/msm: Add MSM_PARAM_GMEM_BASE 2017-04-08 06:59:36 -04:00
nouveau_drm.h drm/nouveau: drop drm/ prefix from include 2016-05-13 14:06:10 +01:00
omap_drm.h uapi: fix drm/omap_drm.h userspace compilation errors 2017-03-13 12:53:27 +02:00
qxl_drm.h drm/qxl: add extern C guard for the UAPI header 2016-05-13 14:06:12 +01:00
r128_drm.h drm/r128: add extern C guard for the UAPI header 2016-05-13 14:06:13 +01:00
radeon_drm.h drm/radeon: add extern C guard for the UAPI header 2016-05-13 14:06:14 +01:00
savage_drm.h drm/savage: add extern C guard for the UAPI header 2016-05-13 14:06:15 +01:00
sis_drm.h drm/sis: add extern C guard for the UAPI header 2016-05-13 14:06:16 +01:00
tegra_drm.h drm/tegra: add extern C guard for the UAPI header 2016-05-13 14:06:17 +01:00
vc4_drm.h drm/vc4: Add fragment shader threading support 2016-11-16 13:25:26 -08:00
vgem_drm.h drm/vgem: Attach sw fences to exported vGEM dma-buf (ioctl) 2016-07-18 08:54:55 +02:00
via_drm.h drm/via: add extern C guard for the UAPI header 2016-05-13 14:06:19 +01:00
virtgpu_drm.h drm/virgl: add extern C guard for the UAPI header 2016-05-13 14:06:20 +01:00
vmwgfx_drm.h drm/vmwgfx: Define an overlaid handle_close ioctl. 2017-03-31 15:21:18 -07:00