aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorRoger He <Hongbo.He@amd.com>2018-02-05 22:22:57 -0500
committerAlex Deucher <alexander.deucher@amd.com>2018-02-26 23:09:34 -0500
commitd330fca11500bebaf7f25b60b7b087bbe8ad0b7f (patch)
tree491ebd8944d82c63881b9c3c98564d3d818e80bc /drivers/gpu/drm
parentc02216acf4177c4411d33735c81cad687790fa59 (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.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_object.c4
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo.c3
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);