From 7e40877e81fc433421b890f87f8b61227d81fb8e Mon Sep 17 00:00:00 2001 From: shaoyunl Date: Mon, 25 Jan 2016 18:14:50 -0500 Subject: [PATCH] libhsakmt: Use GPU ID instead of Node ID in set_process_dgpu_aperture Change-Id: I0e66ca4a018c15c009a3516d250f0044a4407878 --- include/linux/kfd_ioctl.h | 2 +- src/fmm.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/include/linux/kfd_ioctl.h b/include/linux/kfd_ioctl.h index f12e96e46b..8e9c5c1604 100644 --- a/include/linux/kfd_ioctl.h +++ b/include/linux/kfd_ioctl.h @@ -296,7 +296,7 @@ struct kfd_ioctl_open_graphic_handle_args { }; struct kfd_ioctl_set_process_dgpu_aperture_args { - uint32_t node_id; + uint32_t gpu_id; uint64_t dgpu_base; uint64_t dgpu_limit; }; diff --git a/src/fmm.c b/src/fmm.c index 825d76b8c7..7c6837843b 100644 --- a/src/fmm.c +++ b/src/fmm.c @@ -130,7 +130,7 @@ static uint32_t *all_gpu_id_array = NULL; extern int debug_get_reg_status(uint32_t node_id, bool* is_debugged); static HSAKMT_STATUS dgpu_mem_init(uint32_t node_id, void **base, void **limit); -static int set_dgpu_aperture(uint32_t node_id, uint64_t base, uint64_t limit); +static int set_dgpu_aperture(uint32_t gpu_id, uint64_t base, uint64_t limit); static void __fmm_release(void *address, uint64_t MemorySizeInBytes, manageble_aperture_t *aperture); static int _fmm_unmap_from_gpu_scratch(uint32_t gpu_id, @@ -1081,7 +1081,8 @@ HSAKMT_STATUS fmm_init_process_apertures(unsigned int NumNodes) gpu_mem[gpu_mem_id].scratch_physical.align = vm_alignment; /* Set kernel process dgpu aperture. */ - set_dgpu_aperture(i, (uint64_t)svm.dgpu_aperture.base, + set_dgpu_aperture(process_apertures[i].gpu_id, + (uint64_t)svm.dgpu_aperture.base, (uint64_t)svm.dgpu_aperture.limit); svm.dgpu_aperture.align = vm_alignment; @@ -1487,11 +1488,11 @@ int fmm_unmap_from_gpu(void *address) /* Tonga dGPU specific functions */ static bool is_dgpu_mem_init = false; -static int set_dgpu_aperture(uint32_t node_id, uint64_t base, uint64_t limit) +static int set_dgpu_aperture(uint32_t gpu_id, uint64_t base, uint64_t limit) { struct kfd_ioctl_set_process_dgpu_aperture_args args; - args.node_id = node_id; + args.gpu_id = gpu_id; args.dgpu_base = base; args.dgpu_limit = limit;