]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/amdkfd: Use gpu_offset for user queue's wptr
authorYuBiao Wang <YuBiao.Wang@amd.com>
Fri, 15 Sep 2023 02:47:50 +0000 (10:47 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 20 Sep 2023 20:24:09 +0000 (16:24 -0400)
Directly use tbo's start address will miss the domain start offset. Need
to use gpu_offset instead.

Signed-off-by: YuBiao Wang <YuBiao.Wang@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c

index 77159b03a422fc702eed1458b05770fc51c33fbf..36e7171ad9a7f8135e8c0a324e645678f2aefa6e 100644 (file)
@@ -216,7 +216,7 @@ static int add_queue_mes(struct device_queue_manager *dqm, struct queue *q,
 
        if (q->wptr_bo) {
                wptr_addr_off = (uint64_t)q->properties.write_ptr & (PAGE_SIZE - 1);
-               queue_input.wptr_mc_addr = ((uint64_t)q->wptr_bo->tbo.resource->start << PAGE_SHIFT) + wptr_addr_off;
+               queue_input.wptr_mc_addr = amdgpu_bo_gpu_offset(q->wptr_bo) + wptr_addr_off;
        }
 
        queue_input.is_kfd_process = 1;