Skip to content
Permalink
Browse files

mmu: flush tlbs before deleting page tables

Even though we've zeroed the PDE, the GPU may have cached the page table,
so we need to flush when deleting them.

Noticed while working on replacement MMU code, but a backport might be a
good idea, so let's fix it in the current code too.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
  • Loading branch information
skeggsb committed Sep 25, 2017
1 parent c93c411 commit 87e6abaebcd6ca9283f3d3eab8f620c2dd9ccf34
Showing with 2 additions and 0 deletions.
  1. +2 −0 drm/nouveau/nvkm/subdev/mmu/base.c
@@ -241,6 +241,8 @@ nvkm_vm_unmap_pgt(struct nvkm_vm *vm, int big, u32 fpde, u32 lpde)
mmu->func->map_pgt(vpgd->obj, pde, vpgt->mem);
}

mmu->func->flush(vm);

nvkm_memory_del(&pgt);
}
}

0 comments on commit 87e6aba

Please sign in to comment.
You can’t perform that action at this time.