From 424a179ff276e00447a26a5023f94cfa7a045bf9 Mon Sep 17 00:00:00 2001 From: Felix Kuehling Date: Mon, 31 Jul 2017 16:03:59 -0400 Subject: [PATCH 1325/4131] drm/amdkfd: Remove kfd_get_gpu_id The GPU ID is available in dev->id. No need for a linear search through the topology device list. Change-Id: I64b4cf9d7a82be793ffb4694287bad9b03d1ef3e Signed-off-by: Felix Kuehling --- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 1 - drivers/gpu/drm/amd/amdkfd/kfd_process.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 18 ------------------ 4 files changed, 2 insertions(+), 21 deletions(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c index 8f47d4d..e22dde3 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c @@ -1599,7 +1599,7 @@ static int kfd_ioctl_get_dmabuf_info(struct file *filep, r = -EINVAL; goto exit; } - args->gpu_id = kfd_get_gpu_id(dev); + args->gpu_id = dev->id; args->flags = flags; /* Copy metadata buffer to user mode */ diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h index fe0f482..39a1977 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h @@ -850,7 +850,6 @@ struct kfd_topology_device *topology_device_by_nodeid(uint32_t node_id); struct kfd_dev *kfd_device_by_id(uint32_t gpu_id); struct kfd_dev *kfd_device_by_pci_dev(const struct pci_dev *pdev); struct kfd_dev *kfd_device_by_kgd(const struct kgd_dev *kgd); -uint32_t kfd_get_gpu_id(struct kfd_dev *dev); int kfd_topology_enum_kfd_devices(uint8_t idx, struct kfd_dev **kdev); int kfd_numa_node_to_apic_id(int numa_node_id); diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c index baf1f75..a1cad551 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c @@ -541,7 +541,7 @@ static int kfd_process_init_cwsr(struct kfd_process *p, struct file *filep) */ return ret; } else { - offset = (kfd_get_gpu_id(dev) | + offset = (dev->id | KFD_MMAP_TYPE_RESERVED_MEM) << PAGE_SHIFT; qpd->tba_addr = (uint64_t)vm_mmap(filep, 0, dev->cwsr_size, PROT_READ | PROT_EXEC, diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c index 402c2bc..b544ca5 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -79,24 +79,6 @@ struct kfd_dev *kfd_device_by_id(uint32_t gpu_id) return device; } -uint32_t kfd_get_gpu_id(struct kfd_dev *dev) -{ - struct kfd_topology_device *top_dev; - uint32_t gpu_id = 0; - - down_read(&topology_lock); - - list_for_each_entry(top_dev, &topology_device_list, list) - if (top_dev->gpu == dev) { - gpu_id = top_dev->gpu_id; - break; - } - - up_read(&topology_lock); - - return gpu_id; -} - struct kfd_dev *kfd_device_by_pci_dev(const struct pci_dev *pdev) { struct kfd_topology_device *top_dev; -- 2.7.4