aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdkfd/kfd_process.c
diff options
context:
space:
mode:
authorAlex Sierra <alex.sierra@amd.com>2020-04-07 23:08:45 -0500
committerAlex Deucher <alexander.deucher@amd.com>2021-04-20 21:46:07 -0400
commit2aeb742b72121c539cfc9cff8c00c5ca32ba4b1c (patch)
tree8ec05873165dff13b993b951f5ffff69f6777596 /drivers/gpu/drm/amd/amdkfd/kfd_process.c
parentdrm/amdgpu: Remove verify_access shortcut for KFD BOs (diff)
downloadlinux-dev-2aeb742b72121c539cfc9cff8c00c5ca32ba4b1c.tar.xz
linux-dev-2aeb742b72121c539cfc9cff8c00c5ca32ba4b1c.zip
drm/amdkfd: helper to convert gpu id and idx
svm range uses gpu bitmap to store which GPU svm range maps to. Application pass driver gpu id to specify GPU, the helper is needed to convert gpu id to gpu bitmap idx. Access through kfd_process_device pointers array from kfd_process. Signed-off-by: Alex Sierra <alex.sierra@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdkfd/kfd_process.c')
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_process.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
index 0a5379439642..d40cd6c10096 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
@@ -1602,6 +1602,16 @@ int kfd_process_restore_queues(struct kfd_process *p)
return ret;
}
+int kfd_process_gpuidx_from_gpuid(struct kfd_process *p, uint32_t gpu_id)
+{
+ int i;
+
+ for (i = 0; i < p->n_pdds; i++)
+ if (p->pdds[i] && gpu_id == p->pdds[i]->dev->id)
+ return i;
+ return -EINVAL;
+}
+
static void evict_process_worker(struct work_struct *work)
{
int ret;