[PATCH 1/2] drm/amd/amdgpu: set allow_reserved_eviction and resv when bo allocation and cs

Christian König christian.koenig at amd.com
Thu Dec 14 08:20:07 UTC 2017


Here again a better commit message is needed. Just something like the 
following:

This enables eviction of other per VM BOs during allocation and allows 
reaping of deleted per VM BOs during CS again.

With that fixed the patch is Reviewed-by: Christian König 
<christian.koenig at amd.com>.

Regards,
Christian.

Am 14.12.2017 um 09:12 schrieb Roger He:
> Change-Id: I0c6571c2a64e6c5bdad80ccbcccb40eba1c20b4e
> Signed-off-by: Roger He <Hongbo.He at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c     | 6 +++++-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 7 ++++++-
>   2 files changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> index 44523a8..ace6152 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> @@ -343,7 +343,11 @@ static int amdgpu_cs_bo_validate(struct amdgpu_cs_parser *p,
>   				 struct amdgpu_bo *bo)
>   {
>   	struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
> -	struct ttm_operation_ctx ctx = { true, false };
> +	struct ttm_operation_ctx ctx = {
> +		.interruptible = true,
> +		.no_wait_gpu = false,
> +		.resv = bo->tbo.resv
> +	};
>   	uint32_t domain;
>   	int r;
>   
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> index dc0a8be..86340cf 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> @@ -327,7 +327,12 @@ static int amdgpu_bo_do_create(struct amdgpu_device *adev,
>   			       uint64_t init_value,
>   			       struct amdgpu_bo **bo_ptr)
>   {
> -	struct ttm_operation_ctx ctx = { !kernel, false };
> +	struct ttm_operation_ctx ctx = {
> +		.interruptible = !kernel,
> +		.no_wait_gpu = false,
> +		.allow_reserved_eviction = true,
> +		.resv = resv
> +	};
>   	struct amdgpu_bo *bo;
>   	enum ttm_bo_type type;
>   	unsigned long page_align;



More information about the amd-gfx mailing list