[PATCH] drm/amdgpu: simplify bo_va list when vm bo update

zhoucm1 zhoucm1 at amd.com
Thu Apr 19 06:26:23 UTC 2018



On 2018年04月19日 13:31, Junwei Zhang wrote:
> Signed-off-by: Junwei Zhang <Jerry.Zhang at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 21 +++++++++------------
>   1 file changed, 9 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> index 8c34060..93ad925 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -1561,19 +1561,16 @@ int amdgpu_vm_bo_update(struct amdgpu_device *adev,
>   	}
>   
>   	spin_lock(&vm->status_lock);
> -	if (bo && bo->tbo.resv == vm->root.base.bo->tbo.resv) {
> -		unsigned mem_type = bo->tbo.mem.mem_type;
> +	list_del_init(&bo_va->base.vm_status);
>   
> -		/* If the BO is not in its preferred location add it back to
> -		 * the evicted list so that it gets validated again on the
> -		 * next command submission.
> -		 */
> -		list_del_init(&bo_va->base.vm_status);
> -		if (!(bo->preferred_domains & amdgpu_mem_type_to_domain(mem_type)))
> -			list_add_tail(&bo_va->base.vm_status, &vm->evicted);
> -	} else {
> -		list_del_init(&bo_va->base.vm_status);
> -	}
> +	/* If the BO is not in its preferred location add it back to
> +	 * the evicted list so that it gets validated again on the
> +	 * next command submission.
> +	 */
> +	unsigned mem_type = bo->tbo.mem.mem_type;
Don't you get compiling warning for defining var between code?

Regards,
David Zhou
> +	if (bo && bo->tbo.resv == vm->root.base.bo->tbo.resv &&
> +		!(bo->preferred_domains & amdgpu_mem_type_to_domain(mem_type)))
> +		list_add_tail(&bo_va->base.vm_status, &vm->evicted);
>   	spin_unlock(&vm->status_lock);
>   
>   	list_splice_init(&bo_va->invalids, &bo_va->valids);



More information about the amd-gfx mailing list