Commit 9c3db58b authored by Christian König's avatar Christian König Committed by Alex Deucher
Browse files

drm/amdgpu: fixx NULL pointer deref in gmc_v9_0_get_vm_pte



We not only need to make sure that we have a BO, but also that the BO
has some backing store.

Fixes: d1a372af ("drm/amdgpu: Set MTYPE in PTE based on BO flags")
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Reviewed-by: default avatarLuben Tuikov <luben.tuikov@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 47ea2076
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -1185,6 +1185,8 @@ static void gmc_v9_0_get_vm_pte(struct amdgpu_device *adev,
				struct amdgpu_bo_va_mapping *mapping,
				uint64_t *flags)
{
	struct amdgpu_bo *bo = mapping->bo_va->base.bo;

	*flags &= ~AMDGPU_PTE_EXECUTABLE;
	*flags |= mapping->flags & AMDGPU_PTE_EXECUTABLE;

@@ -1196,7 +1198,7 @@ static void gmc_v9_0_get_vm_pte(struct amdgpu_device *adev,
		*flags &= ~AMDGPU_PTE_VALID;
	}

	if (mapping->bo_va->base.bo)
	if (bo && bo->tbo.resource)
		gmc_v9_0_get_coherence_flags(adev, mapping->bo_va->base.bo,
					     mapping, flags);
}