Lines Matching refs:gpuidx
162 unsigned long *hmm_pfns, uint32_t gpuidx) in svm_range_dma_map_dev() argument
165 dma_addr_t *addr = prange->dma_addr[gpuidx]; in svm_range_dma_map_dev()
174 prange->dma_addr[gpuidx] = addr; in svm_range_dma_map_dev()
212 uint32_t gpuidx; in svm_range_dma_map() local
217 for_each_set_bit(gpuidx, bitmap, MAX_GPU_INSTANCE) { in svm_range_dma_map()
220 pr_debug("mapping to gpu idx 0x%x\n", gpuidx); in svm_range_dma_map()
221 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_dma_map()
223 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_dma_map()
228 hmm_pfns, gpuidx); in svm_range_dma_map()
260 uint32_t gpuidx; in svm_range_dma_unmap() local
264 for (gpuidx = 0; gpuidx < MAX_GPU_INSTANCE; gpuidx++) { in svm_range_dma_unmap()
265 dma_addr = prange->dma_addr[gpuidx]; in svm_range_dma_unmap()
269 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_dma_unmap()
271 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_dma_unmap()
284 uint32_t gpuidx; in svm_range_free() local
300 for (gpuidx = 0; gpuidx < MAX_GPU_INSTANCE; gpuidx++) { in svm_range_free()
301 if (prange->dma_addr[gpuidx]) { in svm_range_free()
302 kvfree(prange->dma_addr[gpuidx]); in svm_range_free()
303 prange->dma_addr[gpuidx] = NULL; in svm_range_free()
722 int gpuidx = MAX_GPU_INSTANCE; in svm_range_check_attr() local
728 gpuidx = kfd_process_gpuidx_from_gpuid(p, val); in svm_range_check_attr()
732 gpuidx = kfd_process_gpuidx_from_gpuid(p, val); in svm_range_check_attr()
737 gpuidx = kfd_process_gpuidx_from_gpuid(p, val); in svm_range_check_attr()
750 if (gpuidx < 0) { in svm_range_check_attr()
753 } else if (gpuidx < MAX_GPU_INSTANCE && in svm_range_check_attr()
754 !test_bit(gpuidx, p->svms.bitmap_supported)) { in svm_range_check_attr()
769 int gpuidx; in svm_range_apply_attrs() local
785 gpuidx = kfd_process_gpuidx_from_gpuid(p, in svm_range_apply_attrs()
788 bitmap_clear(prange->bitmap_access, gpuidx, 1); in svm_range_apply_attrs()
789 bitmap_clear(prange->bitmap_aip, gpuidx, 1); in svm_range_apply_attrs()
791 bitmap_set(prange->bitmap_access, gpuidx, 1); in svm_range_apply_attrs()
792 bitmap_clear(prange->bitmap_aip, gpuidx, 1); in svm_range_apply_attrs()
794 bitmap_clear(prange->bitmap_access, gpuidx, 1); in svm_range_apply_attrs()
795 bitmap_set(prange->bitmap_aip, gpuidx, 1); in svm_range_apply_attrs()
820 int gpuidx; in svm_range_is_same_attrs() local
836 gpuidx = kfd_process_gpuidx_from_gpuid(p, in svm_range_is_same_attrs()
839 if (test_bit(gpuidx, prange->bitmap_access) || in svm_range_is_same_attrs()
840 test_bit(gpuidx, prange->bitmap_aip)) in svm_range_is_same_attrs()
843 if (!test_bit(gpuidx, prange->bitmap_access)) in svm_range_is_same_attrs()
846 if (!test_bit(gpuidx, prange->bitmap_aip)) in svm_range_is_same_attrs()
1378 uint32_t gpuidx; in svm_range_unmap_from_gpus() local
1394 for_each_or_bit(gpuidx, prange->bitmap_access, prange->bitmap_aip, MAX_GPU_INSTANCE) { in svm_range_unmap_from_gpus()
1395 pr_debug("unmap from gpu idx 0x%x\n", gpuidx); in svm_range_unmap_from_gpus()
1396 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_unmap_from_gpus()
1398 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_unmap_from_gpus()
1518 uint32_t gpuidx; in svm_range_map_to_gpus() local
1525 for_each_set_bit(gpuidx, bitmap, MAX_GPU_INSTANCE) { in svm_range_map_to_gpus()
1526 pr_debug("mapping to gpu idx 0x%x\n", gpuidx); in svm_range_map_to_gpus()
1527 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_map_to_gpus()
1529 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_map_to_gpus()
1539 pr_debug("cannot map to device idx %d\n", gpuidx); in svm_range_map_to_gpus()
1544 prange->dma_addr[gpuidx], in svm_range_map_to_gpus()
1578 uint32_t gpuidx; in svm_range_reserve_bos() local
1583 for_each_set_bit(gpuidx, ctx->bitmap, MAX_GPU_INSTANCE) { in svm_range_reserve_bos()
1584 pdd = kfd_process_device_from_gpuidx(ctx->process, gpuidx); in svm_range_reserve_bos()
1586 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_reserve_bos()
1601 for_each_set_bit(gpuidx, ctx->bitmap, MAX_GPU_INSTANCE) { in svm_range_reserve_bos()
1602 pdd = kfd_process_device_from_gpuidx(ctx->process, gpuidx); in svm_range_reserve_bos()
1604 pr_debug("failed to find device idx %d\n", gpuidx); in svm_range_reserve_bos()
1630 static void *kfd_svm_page_owner(struct kfd_process *p, int32_t gpuidx) in kfd_svm_page_owner() argument
1634 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in kfd_svm_page_owner()
1667 struct svm_range *prange, int32_t gpuidx, in svm_range_validate_and_map() argument
1684 if (gpuidx < MAX_GPU_INSTANCE) { in svm_range_validate_and_map()
1686 bitmap_set(ctx->bitmap, gpuidx, 1); in svm_range_validate_and_map()
1695 gpuidx = kfd_process_gpuidx_from_gpuid(ctx->process, in svm_range_validate_and_map()
1697 if (gpuidx < 0) { in svm_range_validate_and_map()
1703 if (test_bit(gpuidx, prange->bitmap_access)) in svm_range_validate_and_map()
1704 bitmap_set(ctx->bitmap, gpuidx, 1); in svm_range_validate_and_map()
2753 int32_t *gpuidx) in svm_range_best_restore_location() argument
2762 r = kfd_process_gpuid_from_node(p, node, &gpuid, gpuidx); in svm_range_best_restore_location()
2781 if (test_bit(*gpuidx, prange->bitmap_access)) in svm_range_best_restore_location()
2784 if (test_bit(*gpuidx, prange->bitmap_aip)) { in svm_range_best_restore_location()
2911 uint32_t gpuid, gpuidx; in svm_range_create_unregistered_range() local
2939 if (kfd_process_gpuid_from_node(p, node, &gpuid, &gpuidx)) { in svm_range_create_unregistered_range()
2994 int32_t gpuidx) in svm_range_count_fault() argument
3002 if (gpuidx == MAX_GPU_INSTANCE) { in svm_range_count_fault()
3006 r = kfd_process_gpuid_from_node(p, node, &gpuid, &gpuidx); in svm_range_count_fault()
3014 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_count_fault()
3045 int32_t gpuid, gpuidx = MAX_GPU_INSTANCE; in svm_range_restore_pages() local
3079 if (kfd_process_gpuid_from_node(p, node, &gpuid, &gpuidx)) { in svm_range_restore_pages()
3106 if (svms->checkpoint_ts[gpuidx] != 0) { in svm_range_restore_pages()
3107 if (amdgpu_ih_ts_after_or_equal(ts, svms->checkpoint_ts[gpuidx])) { in svm_range_restore_pages()
3117 svms->checkpoint_ts[gpuidx] = 0; in svm_range_restore_pages()
3182 best_loc = svm_range_best_restore_location(prange, node, &gpuidx); in svm_range_restore_pages()
3230 r = svm_range_validate_and_map(mm, start, last, prange, gpuidx, false, in svm_range_restore_pages()
3247 svm_range_count_fault(node, p, gpuidx); in svm_range_restore_pages()
3508 uint32_t gpuidx; in svm_range_best_prefetch_location() local
3533 for_each_set_bit(gpuidx, bitmap, MAX_GPU_INSTANCE) { in svm_range_best_prefetch_location()
3534 pdd = kfd_process_device_from_gpuidx(p, gpuidx); in svm_range_best_prefetch_location()
3536 pr_debug("failed to get device by idx 0x%x\n", gpuidx); in svm_range_best_prefetch_location()
3850 int gpuidx; in svm_range_get_attr() local
3977 gpuidx = kfd_process_gpuidx_from_gpuid(p, in svm_range_get_attr()
3979 if (gpuidx < 0) { in svm_range_get_attr()
3983 if (test_bit(gpuidx, bitmap_access)) in svm_range_get_attr()
3985 else if (test_bit(gpuidx, bitmap_aip)) in svm_range_get_attr()