mirror_ubuntu-kernels/drivers/gpu/drm/i915/selftests
Chris Wilson f6844a85e0 drm/i915/selftests: Replace opencoded clflush with drm_clflush_virt_range
We occasionally see that the clflush prior to a read of GPU data is
returning stale data, reminiscent of much earlier bugs fixed by adding a
second clflush for serialisation. As drm_clflush_virt_range() already
supplies the workaround, use it rather than open code the clflush
instruction.

References: 396f5d62d1 ("drm: Restore double clflush on the last partial cacheline")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180730075351.15569-3-chris@chris-wilson.co.uk
2018-07-30 10:33:21 +01:00
..
huge_gem_object.c
huge_gem_object.h
huge_pages.c drm/i915/selftests: Free the backing store between iterations 2018-07-17 10:28:03 +01:00
i915_gem_coherency.c drm/i915/selftests: Replace opencoded clflush with drm_clflush_virt_range 2018-07-30 10:33:21 +01:00
i915_gem_context.c drm/i915: Prevent writing into a read-only object via a GGTT mmap 2018-07-13 16:14:04 +01:00
i915_gem_dmabuf.c drm/i915: Replace drm_dev_unref with drm_dev_put 2018-06-28 19:09:46 +02:00
i915_gem_evict.c drm/i915/selftests: Skip live eviction tests when wedged 2018-07-06 11:25:06 +01:00
i915_gem_gtt.c drm/i915/selftests: Constrain mock_gtt tests to fit within RAM 2018-07-10 09:53:41 +01:00
i915_gem_object.c drm/i915: Avoid computing tile_row_size() for untiled objects 2018-07-26 12:30:24 +01:00
i915_live_selftests.h drm/i915: Check whitelist registers across resets 2018-04-14 18:36:45 +01:00
i915_mock_selftests.h drm/i915: Look for an active kernel context before switching 2018-05-24 15:51:45 +01:00
i915_random.c
i915_random.h
i915_request.c drm/i915: Provide a timeout to i915_gem_wait_for_idle() 2018-07-09 13:55:41 +01:00
i915_selftest.c drm/i915/selftests: Include the start of each subtest in the GEM trace 2018-07-13 22:30:56 +01:00
i915_sw_fence.c
i915_syncmap.c
i915_timeline.c drm/i915: Split i915_gem_timeline into individual timelines 2018-05-02 23:57:18 +01:00
i915_vma.c drm/i915: Replace drm_dev_unref with drm_dev_put 2018-06-28 19:09:46 +02:00
igt_flush_test.c drm/i915/selftests: Replace wait-on-timeout with explicit timeout 2018-07-09 13:56:42 +01:00
igt_flush_test.h drm/i915/selftests: Refactor common flush_test() 2018-05-08 12:44:31 +01:00
igt_wedge_me.h drm/i915/selftests: Add a safety net to live_workarounds 2018-07-11 14:13:56 +01:00
intel_breadcrumbs.c drm/i915: Replace drm_dev_unref with drm_dev_put 2018-06-28 19:09:46 +02:00
intel_engine_cs.c
intel_guc.c drm/i915/selftests: Fixup GuC FW negative test 2018-07-12 15:22:58 +01:00
intel_hangcheck.c drm/i915/selftests: Exercise resetting in the middle of a wait-on-fence 2018-07-26 13:32:08 +01:00
intel_lrc.c drm/i915/selftests: Force a preemption hang 2018-07-16 17:17:27 +01:00
intel_uncore.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
intel_workarounds.c drm/i915/selftests: Add a safety net to live_workarounds 2018-07-11 14:13:56 +01:00
lib_sw_fence.c
lib_sw_fence.h
mock_context.c drm/i915: Store a pointer to intel_context in i915_request 2018-05-18 09:35:22 +01:00
mock_context.h
mock_dmabuf.c drm/i915/selftests: Remove unused dmabuf->kmap routines, fix the build 2018-06-20 17:48:24 +01:00
mock_dmabuf.h
mock_drm.c
mock_drm.h
mock_engine.c drm/i915: Replace nested subclassing with explicit subclasses 2018-07-07 08:09:43 +01:00
mock_engine.h
mock_gem_device.c drm/i915/selftests: Avoid warning if runtime pm is disabled 2018-07-06 23:33:34 +01:00
mock_gem_device.h
mock_gem_object.h
mock_gtt.c drm/i915/selftests: Replace open-coded i915_address_space_init() 2018-07-05 11:19:24 +01:00
mock_gtt.h
mock_request.c
mock_request.h
mock_timeline.c drm/i915: Split i915_gem_timeline into individual timelines 2018-05-02 23:57:18 +01:00
mock_timeline.h drm/i915: Split i915_gem_timeline into individual timelines 2018-05-02 23:57:18 +01:00
mock_uncore.c
mock_uncore.h
scatterlist.c