[PATCH 4/5] wmb

Chris Wilson chris at chris-wilson.co.uk
Sun May 10 12:51:52 UTC 2020


---
 drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/gt/gen8_ppgtt.c b/drivers/gpu/drm/i915/gt/gen8_ppgtt.c
index 94e746af8926..942329350893 100644
--- a/drivers/gpu/drm/i915/gt/gen8_ppgtt.c
+++ b/drivers/gpu/drm/i915/gt/gen8_ppgtt.c
@@ -405,7 +405,9 @@ gen8_ppgtt_insert_pte(struct i915_ppgtt *ppgtt,
 	vaddr = kmap_atomic_px(i915_pt_entry(pd, gen8_pd_index(idx, 1)));
 	do {
 		GEM_BUG_ON(iter->sg->length < I915_GTT_PAGE_SIZE);
+		wmb();
 		vaddr[gen8_pd_index(idx, 0)] = pte_encode | iter->dma;
+		wmb();
 
 		iter->dma += I915_GTT_PAGE_SIZE;
 		if (iter->dma >= iter->max) {
@@ -487,7 +489,9 @@ static void gen8_ppgtt_insert_huge(struct i915_vma *vma,
 
 		do {
 			GEM_BUG_ON(iter->sg->length < page_size);
+			wmb();
 			vaddr[index++] = encode | iter->dma;
+			wmb();
 
 			start += page_size;
 			iter->dma += page_size;
@@ -580,6 +584,7 @@ static void gen8_ppgtt_insert(struct i915_address_space *vm,
 
 		vma->page_sizes.gtt = I915_GTT_PAGE_SIZE;
 	}
+	mb();
 }
 
 static int gen8_init_scratch(struct i915_address_space *vm)
-- 
2.20.1



More information about the Intel-gfx-trybot mailing list