diff options
author | Christian König <christian.koenig@amd.com> | 2016-04-15 11:19:17 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-05-04 20:23:12 -0400 |
commit | b76af4a41927994e130500659866efbd992deb9d (patch) | |
tree | 50dfb4effca2da868f7c9d659e446bb2a04a5434 /drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |
parent | 29b3259a3ab98f4823f3227de1ae695f3f7bc751 (diff) |
drm/amdgpu: remove sorting of CS BOs
Not needed any more.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index d7e0b0b9a1bc..2ebba295d0e4 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |||
@@ -24,7 +24,6 @@ | |||
24 | * Authors: | 24 | * Authors: |
25 | * Jerome Glisse <glisse@freedesktop.org> | 25 | * Jerome Glisse <glisse@freedesktop.org> |
26 | */ | 26 | */ |
27 | #include <linux/list_sort.h> | ||
28 | #include <linux/pagemap.h> | 27 | #include <linux/pagemap.h> |
29 | #include <drm/drmP.h> | 28 | #include <drm/drmP.h> |
30 | #include <drm/amdgpu_drm.h> | 29 | #include <drm/amdgpu_drm.h> |
@@ -527,16 +526,6 @@ static int amdgpu_cs_sync_rings(struct amdgpu_cs_parser *p) | |||
527 | return 0; | 526 | return 0; |
528 | } | 527 | } |
529 | 528 | ||
530 | static int cmp_size_smaller_first(void *priv, struct list_head *a, | ||
531 | struct list_head *b) | ||
532 | { | ||
533 | struct amdgpu_bo_list_entry *la = list_entry(a, struct amdgpu_bo_list_entry, tv.head); | ||
534 | struct amdgpu_bo_list_entry *lb = list_entry(b, struct amdgpu_bo_list_entry, tv.head); | ||
535 | |||
536 | /* Sort A before B if A is smaller. */ | ||
537 | return (int)la->robj->tbo.num_pages - (int)lb->robj->tbo.num_pages; | ||
538 | } | ||
539 | |||
540 | /** | 529 | /** |
541 | * cs_parser_fini() - clean parser states | 530 | * cs_parser_fini() - clean parser states |
542 | * @parser: parser structure holding parsing context. | 531 | * @parser: parser structure holding parsing context. |
@@ -553,18 +542,6 @@ static void amdgpu_cs_parser_fini(struct amdgpu_cs_parser *parser, int error, bo | |||
553 | if (!error) { | 542 | if (!error) { |
554 | amdgpu_vm_move_pt_bos_in_lru(parser->adev, &fpriv->vm); | 543 | amdgpu_vm_move_pt_bos_in_lru(parser->adev, &fpriv->vm); |
555 | 544 | ||
556 | /* Sort the buffer list from the smallest to largest buffer, | ||
557 | * which affects the order of buffers in the LRU list. | ||
558 | * This assures that the smallest buffers are added first | ||
559 | * to the LRU list, so they are likely to be later evicted | ||
560 | * first, instead of large buffers whose eviction is more | ||
561 | * expensive. | ||
562 | * | ||
563 | * This slightly lowers the number of bytes moved by TTM | ||
564 | * per frame under memory pressure. | ||
565 | */ | ||
566 | list_sort(NULL, &parser->validated, cmp_size_smaller_first); | ||
567 | |||
568 | ttm_eu_fence_buffer_objects(&parser->ticket, | 545 | ttm_eu_fence_buffer_objects(&parser->ticket, |
569 | &parser->validated, | 546 | &parser->validated, |
570 | parser->fence); | 547 | parser->fence); |