--- drivers/gpu/drm/i915/i915_gem.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 6b37cdd7d2e3..cbcbb0c2b8e3 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -767,8 +767,11 @@ shmem_pread_fast(struct page *page, int shmem_page_offset, int page_length, return -EINVAL; vaddr = kmap_atomic(page); - if (needs_clflush) + if (needs_clflush) { clflush_cache_range(vaddr + shmem_page_offset, page_length); + clflush(vaddr + shmem_page_offset); + mb(); + } ret = __copy_to_user_inatomic(user_data, vaddr + shmem_page_offset, page_length); @@ -810,10 +813,13 @@ shmem_pread_slow(struct page *page, int shmem_page_offset, int page_length, int ret; vaddr = kmap(page); - if (needs_clflush) + if (needs_clflush) { shmem_clflush_swizzled_range(vaddr + shmem_page_offset, page_length, page_do_bit17_swizzling); + clflush(vaddr + shmem_page_offset); + mb(); + } if (page_do_bit17_swizzling) ret = __copy_to_user_swizzled(user_data, -- 2.7.0.rc3 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx