diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c index f76649e523a0..f7905bce0de1 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c @@ -150,7 +150,7 @@ void amdgpu_bo_placement_from_domain(struct amdgpu_bo *abo, u32 domain)  		if (flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED)  			places[c].lpfn = min_not_zero(places[c].lpfn, visible_pfn); -		else if (adev->gmc.real_vram_size != adev->gmc.visible_vram_size) +		else  			places[c].flags |= TTM_PL_FLAG_TOPDOWN;  		if (flags & AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS) @@ -1282,8 +1282,12 @@ void amdgpu_bo_move_notify(struct ttm_buffer_object *bo,  void amdgpu_bo_get_memory(struct amdgpu_bo *bo,  			  struct amdgpu_mem_stats *stats)  { -	unsigned int domain;  	uint64_t size = amdgpu_bo_size(bo); +	unsigned int domain; + +	/* Abort if the BO doesn't currently have a backing store */ +	if (!bo->tbo.resource) +		return;  	domain = amdgpu_mem_type_to_domain(bo->tbo.resource->mem_type);  	switch (domain) {  | 
