Patch #1, #2 and #4 are Reviewed-by: Christian König <[email protected]>.

For patch #5:
  static void amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params,
                                  struct amdgpu_vm *vm,
                                  uint64_t start, uint64_t end,
-                                 uint64_t dst, uint32_t flags)
+                                 uint64_t dst, uint32_t flags,
+                                 bool shadow)
  {
Just put the new parameter into the amdgpu_pte_update_params structur. This way we don't need to change this so much.

Patch #3, #6, #7:

Well first of all you need to squash patch #6 and #7, adding the linked list first and then the lock isn't such a good idea when somebody would bisect this patchset.

Additional to that I wouldn't link the VMs, instead just link all the BOs which have a shadow.

This way we can then later on also use the functionality for user space BOs.

Patch #8: Looks good to me, but need to be rebased on linking the BOs instead of the VM.

Patch #9 and #10: Please reorder those to be at the beginning of the patchset.

And I would add this directly into amdgpu_bo_create_shadow() and then make all other functions depend on if the shadow is allocated or not.

Regards,
Christian.

Am 16.08.2016 um 08:12 schrieb Zhou, David(ChunMing):
Ping...

-----Original Message-----
From: Chunming Zhou [mailto:[email protected]]
Sent: Monday, August 15, 2016 2:07 PM
To: [email protected]
Cc: Zhou, David(ChunMing) <[email protected]>
Subject: [PATCH 00/10] shadow page table support V4

Since we cannot ensure VRAM is consistent after a GPU reset, page table
shadowing is necessary. Shadowed page tables are, in a sense, a method to
recover the consistent state of the page tables before the reset occurred.

We need to allocate GTT bo as the shadow of VRAM bo when creating page
table, and make them the same. After gpu reset, we will need to use SDMA
to copy GTT bo content to VRAM bo, then page table will be recoveried.


V2:
Shadow bo uses a shadow entity running on normal run queue, after gpu
reset, we need to wait for all shadow jobs finished first, then recovery page
table from shadow.

V3:
Addressed Christian comments for shadow bo part.

V4:
Switch back to update page table twice (one of two is for shadow)

Chunming Zhou (10):
   drm/amdgpu: add direct submision option for copy_buffer
   drm/amdgpu: sync bo and shadow V2
   drm/amdgpu: implement vm recovery function from shadow V2
   drm/amdgpu: update pd shadow while updating pd
   drm/amdgpu: update pt shadow while updating pt
   drm/amdgpu: link all vm clients
   drm/amdgpu: add vm_list_lock
   drm/amdgpu: recover page tables after gpu reset
   drm/amdgpu: add need backup function
   drm/amdgpu: add backup condition for vm

  drivers/gpu/drm/amd/amdgpu/amdgpu.h           |  14 ++-
  drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c |   3 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c        |   6 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c    |  38 +++++-
  drivers/gpu/drm/amd/amdgpu/amdgpu_object.c    |  43 +++++++
  drivers/gpu/drm/amd/amdgpu/amdgpu_object.h    |   5 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_test.c      |   4 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c       |  21 +++-
  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c        | 163
+++++++++++++++++++++-----
  9 files changed, 257 insertions(+), 40 deletions(-)

--
1.9.1
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to