diff options
author | Roger He <Hongbo.He@amd.com> | 2018-02-05 22:22:57 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-02-26 23:09:34 -0500 |
commit | d330fca11500bebaf7f25b60b7b087bbe8ad0b7f (patch) | |
tree | 491ebd8944d82c63881b9c3c98564d3d818e80bc /drivers/gpu/drm | |
parent | c02216acf4177c4411d33735c81cad687790fa59 (diff) |
drm/ttm: use bit flag to replace allow_reserved_eviction in ttm_operation_ctx
for saving memory and more bit flag can be used in future
Signed-off-by: Roger He <Hongbo.He@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_bo.c | 3 |
3 files changed, 6 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index eaa3cb0c3ad1..dc34b50e6b29 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |||
@@ -346,8 +346,8 @@ static int amdgpu_cs_bo_validate(struct amdgpu_cs_parser *p, | |||
346 | struct ttm_operation_ctx ctx = { | 346 | struct ttm_operation_ctx ctx = { |
347 | .interruptible = true, | 347 | .interruptible = true, |
348 | .no_wait_gpu = false, | 348 | .no_wait_gpu = false, |
349 | .allow_reserved_eviction = false, | 349 | .resv = bo->tbo.resv, |
350 | .resv = bo->tbo.resv | 350 | .flags = 0 |
351 | }; | 351 | }; |
352 | uint32_t domain; | 352 | uint32_t domain; |
353 | int r; | 353 | int r; |
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c index 969de54b62da..c2a4b7215c46 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | |||
@@ -341,8 +341,8 @@ static int amdgpu_bo_do_create(struct amdgpu_device *adev, | |||
341 | struct ttm_operation_ctx ctx = { | 341 | struct ttm_operation_ctx ctx = { |
342 | .interruptible = !kernel, | 342 | .interruptible = !kernel, |
343 | .no_wait_gpu = false, | 343 | .no_wait_gpu = false, |
344 | .allow_reserved_eviction = true, | 344 | .resv = resv, |
345 | .resv = resv | 345 | .flags = TTM_OPT_FLAG_ALLOW_RES_EVICT |
346 | }; | 346 | }; |
347 | struct amdgpu_bo *bo; | 347 | struct amdgpu_bo *bo; |
348 | enum ttm_bo_type type; | 348 | enum ttm_bo_type type; |
diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c index d90b1cf10b27..a907311afe1a 100644 --- a/drivers/gpu/drm/ttm/ttm_bo.c +++ b/drivers/gpu/drm/ttm/ttm_bo.c | |||
@@ -730,7 +730,8 @@ static bool ttm_bo_evict_swapout_allowable(struct ttm_buffer_object *bo, | |||
730 | *locked = false; | 730 | *locked = false; |
731 | if (bo->resv == ctx->resv) { | 731 | if (bo->resv == ctx->resv) { |
732 | reservation_object_assert_held(bo->resv); | 732 | reservation_object_assert_held(bo->resv); |
733 | if (ctx->allow_reserved_eviction || !list_empty(&bo->ddestroy)) | 733 | if (ctx->flags & TTM_OPT_FLAG_ALLOW_RES_EVICT |
734 | || !list_empty(&bo->ddestroy)) | ||
734 | ret = true; | 735 | ret = true; |
735 | } else { | 736 | } else { |
736 | *locked = reservation_object_trylock(bo->resv); | 737 | *locked = reservation_object_trylock(bo->resv); |