Dnia środa, 30 stycznia 2019 13:42:33 CET piszesz:
> Does the attached patch fix the issue?
> 
> Christian.

I have tested this one also - "drm/amdgpu: partial revert cleanup setting 
bulk_movable v2"

>We still need to set bulk_movable to false when new BOs are added or removed.
>
>v2: also set it to false on removal
>
>Signed-off-by: Christian König <christian.koe...@amd.com>
>---
> drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
>diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/
>amdgpu/amdgpu_vm.c
>index 79f9dde70bc0..822546a149fa 100644
>--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
>+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
>@@ -332,6 +332,7 @@  static void amdgpu_vm_bo_base_init(struct 
>amdgpu_vm_bo_base *base,
>       if (bo->tbo.resv != vm->root.base.bo->tbo.resv)
>               return;
> 
>+      vm->bulk_moveable = false;
>       if (bo->tbo.type == ttm_bo_type_kernel)
>               amdgpu_vm_bo_relocated(base);
>       else
>@@ -2772,6 +2773,9 @@  void amdgpu_vm_bo_rmv(struct amdgpu_device *adev,
>       struct amdgpu_vm_bo_base **base;
> 
>       if (bo) {
>+              if (bo->tbo.resv == vm->root.base.bo->tbo.resv)
>+                      vm->bulk_moveable = false;
>+
>               for (base = &bo_va->base.bo->vm_bo; *base;
>                    base = &(*base)->next) {
>                       if (*base != &bo_va->base)

and so far I have no lockup and Oops, so I think this one is ok.

Thank you very much,
Przemek.

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to