]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amdgpu: remove direct_submit arg from amdgpu_copy_buffer
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Fri, 19 Sep 2025 07:13:12 +0000 (09:13 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 8 Dec 2025 18:56:39 +0000 (13:56 -0500)
It was always false.

Signed-off-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Acked-by: Felix Kuehling <felix.kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
drivers/gpu/drm/amd/amdkfd/kfd_migrate.c

index 199693369c7ce0ae3b5d5f15dbcff98e1032b975..02c2479a8840070c48c0b3b9ca3e0e6a94e673e8 100644 (file)
@@ -39,7 +39,7 @@ static int amdgpu_benchmark_do_move(struct amdgpu_device *adev, unsigned size,
        for (i = 0; i < n; i++) {
                struct amdgpu_ring *ring = adev->mman.buffer_funcs_ring;
                r = amdgpu_copy_buffer(ring, saddr, daddr, size, NULL, &fence,
-                                      false, false, 0);
+                                      false, 0);
                if (r)
                        goto exit_do_move;
                r = dma_fence_wait(fence, false);
index 9948ca7fcdaff90ffc029903d74025aea4b018ff..96086877337bf46d051b8abd749a0167b61378b5 100644 (file)
@@ -346,7 +346,7 @@ static int amdgpu_ttm_copy_mem_to_mem(struct amdgpu_device *adev,
                }
 
                r = amdgpu_copy_buffer(ring, from, to, cur_size, resv,
-                                      &next, false, true, copy_flags);
+                                      &next, true, copy_flags);
                if (r)
                        goto error;
 
@@ -2320,16 +2320,13 @@ error_free_entity:
 }
 
 static int amdgpu_ttm_prepare_job(struct amdgpu_device *adev,
-                                 bool direct_submit,
                                  unsigned int num_dw,
                                  struct dma_resv *resv,
                                  bool vm_needs_flush,
                                  struct amdgpu_job **job,
                                  bool delayed, u64 k_job_id)
 {
-       enum amdgpu_ib_pool_type pool = direct_submit ?
-               AMDGPU_IB_POOL_DIRECT :
-               AMDGPU_IB_POOL_DELAYED;
+       enum amdgpu_ib_pool_type pool = AMDGPU_IB_POOL_DELAYED;
        int r;
        struct drm_sched_entity *entity = delayed ? &adev->mman.low_pr :
                                                    &adev->mman.high_pr;
@@ -2355,7 +2352,7 @@ static int amdgpu_ttm_prepare_job(struct amdgpu_device *adev,
 int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,
                       uint64_t dst_offset, uint32_t byte_count,
                       struct dma_resv *resv,
-                      struct dma_fence **fence, bool direct_submit,
+                      struct dma_fence **fence,
                       bool vm_needs_flush, uint32_t copy_flags)
 {
        struct amdgpu_device *adev = ring->adev;
@@ -2365,7 +2362,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,
        unsigned int i;
        int r;
 
-       if (!direct_submit && !ring->sched.ready) {
+       if (!ring->sched.ready) {
                dev_err(adev->dev,
                        "Trying to move memory with ring turned off.\n");
                return -EINVAL;
@@ -2374,7 +2371,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,
        max_bytes = adev->mman.buffer_funcs->copy_max_bytes;
        num_loops = DIV_ROUND_UP(byte_count, max_bytes);
        num_dw = ALIGN(num_loops * adev->mman.buffer_funcs->copy_num_dw, 8);
-       r = amdgpu_ttm_prepare_job(adev, direct_submit, num_dw,
+       r = amdgpu_ttm_prepare_job(adev, num_dw,
                                   resv, vm_needs_flush, &job, false,
                                   AMDGPU_KERNEL_JOB_ID_TTM_COPY_BUFFER);
        if (r)
@@ -2392,10 +2389,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,
 
        amdgpu_ring_pad_ib(ring, &job->ibs[0]);
        WARN_ON(job->ibs[0].length_dw > num_dw);
-       if (direct_submit)
-               r = amdgpu_job_submit_direct(job, ring, fence);
-       else
-               *fence = amdgpu_job_submit(job);
+       *fence = amdgpu_job_submit(job);
        if (r)
                goto error_free;
 
@@ -2424,7 +2418,7 @@ static int amdgpu_ttm_fill_mem(struct amdgpu_ring *ring, uint32_t src_data,
        max_bytes = adev->mman.buffer_funcs->fill_max_bytes;
        num_loops = DIV_ROUND_UP_ULL(byte_count, max_bytes);
        num_dw = ALIGN(num_loops * adev->mman.buffer_funcs->fill_num_dw, 8);
-       r = amdgpu_ttm_prepare_job(adev, false, num_dw, resv, vm_needs_flush,
+       r = amdgpu_ttm_prepare_job(adev, num_dw, resv, vm_needs_flush,
                                   &job, delayed, k_job_id);
        if (r)
                return r;
index f0165273c621d6e499a8ef5475404bd009c30b76..be6ee5fbf72cebceb22cadb129178564dcc6e159 100644 (file)
@@ -166,7 +166,7 @@ void amdgpu_ttm_set_buffer_funcs_status(struct amdgpu_device *adev,
 int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,
                       uint64_t dst_offset, uint32_t byte_count,
                       struct dma_resv *resv,
-                      struct dma_fence **fence, bool direct_submit,
+                      struct dma_fence **fence,
                       bool vm_needs_flush, uint32_t copy_flags);
 int amdgpu_ttm_clear_buffer(struct amdgpu_bo *bo,
                            struct dma_resv *resv,
index 46c84fc60af1ddbc13ee58a374514ffcbeefc822..378af0b2aaa90d0929637245d46cc40ae38a3445 100644 (file)
@@ -153,7 +153,7 @@ svm_migrate_copy_memory_gart(struct amdgpu_device *adev, dma_addr_t *sys,
                }
 
                r = amdgpu_copy_buffer(ring, gart_s, gart_d, size * PAGE_SIZE,
-                                      NULL, &next, false, true, 0);
+                                      NULL, &next, true, 0);
                if (r) {
                        dev_err(adev->dev, "fail %d to copy memory\n", r);
                        goto out_unlock;