From: monk.liu Date: Mon, 27 Apr 2015 07:19:20 +0000 (+0800) Subject: drm/amdgpu: fix bug occurs when bo_list is NULL X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=840d51445f1527bda37b5d48a203ecff7988ad2b;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git drm/amdgpu: fix bug occurs when bo_list is NULL Still need to handle ibs BO and validate them even bo_list is NULL Signed-off-by: Monk.Liu Reviewed-by: Christian König Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 70a90312d0a4..ffbe9aa9f232 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -353,19 +353,19 @@ static int amdgpu_cs_parser_relocs(struct amdgpu_cs_parser *p) { struct amdgpu_fpriv *fpriv = p->filp->driver_priv; struct amdgpu_cs_buckets buckets; - bool need_mmap_lock; + bool need_mmap_lock = false; int i, r; - if (p->bo_list == NULL) - return 0; + if (p->bo_list) { + need_mmap_lock = p->bo_list->has_userptr; + amdgpu_cs_buckets_init(&buckets); + for (i = 0; i < p->bo_list->num_entries; i++) + amdgpu_cs_buckets_add(&buckets, &p->bo_list->array[i].tv.head, + p->bo_list->array[i].priority); - need_mmap_lock = p->bo_list->has_userptr; - amdgpu_cs_buckets_init(&buckets); - for (i = 0; i < p->bo_list->num_entries; i++) - amdgpu_cs_buckets_add(&buckets, &p->bo_list->array[i].tv.head, - p->bo_list->array[i].priority); + amdgpu_cs_buckets_get_list(&buckets, &p->validated); + } - amdgpu_cs_buckets_get_list(&buckets, &p->validated); p->vm_bos = amdgpu_vm_get_bos(p->adev, &fpriv->vm, &p->validated);