amd-staging-drm-next: Oops - BUG: unable to handle kernel NULL pointer dereference, bisected.

Przemek Socha soprwa at gmail.com
Thu Jan 31 09:23:49 UTC 2019


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.koenig at 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.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20190131/dd253a62/attachment.sig>


More information about the amd-gfx mailing list