2
0

libhsakmt: update HsaPointerInfo for address-only allocated VRAM.

Signed-off-by: Xiaogang Chen<Xiaogang.Chen@amd.com>
Change-Id: Ib88b34dff772997d2b2e5f3c7e333cef3092ef56


[ROCm/ROCR-Runtime commit: 11ac57d293]
Este cometimento está contido em:
Xiaogang Chen
2022-10-31 22:06:28 -05:00
cometido por Xiaogang Chen
ascendente a7ccb14b9c
cometimento 038916c727
3 ficheiros modificados com 7 adições e 1 eliminações
+2 -1
Ver ficheiro
@@ -1303,8 +1303,9 @@ typedef enum _HSA_POINTER_TYPE {
HSA_POINTER_ALLOCATED = 1, // Allocated with hsaKmtAllocMemory (except scratch)
HSA_POINTER_REGISTERED_USER = 2, // Registered user pointer
HSA_POINTER_REGISTERED_GRAPHICS = 3, // Registered graphics buffer
HSA_POINTER_REGISTERED_SHARED = 4 // Registered shared buffer (IPC)
HSA_POINTER_REGISTERED_SHARED = 4, // Registered shared buffer (IPC)
// (hsaKmtRegisterGraphicsToNodes)
HSA_POINTER_RESERVED_ADDR = 5 // address-only reservation VA
} HSA_POINTER_TYPE;
typedef struct _HsaPointerInfo {
+3
Ver ficheiro
@@ -339,6 +339,9 @@ static void analysis_memory_exception(struct kfd_hsa_memory_exception_data *
pr_err("Memory is allocated using hsaKmtAllocMemory\n");
pr_err("CPU address of the memory is %p\n", info.CPUAddress);
break;
case HSA_POINTER_RESERVED_ADDR:
pr_err("Memory is allocated by OnlyAddress mode\n");
break;
default:
pr_err("Invalid memory type %d\n", info.Type);
break;
+2
Ver ficheiro
@@ -3963,6 +3963,8 @@ HSAKMT_STATUS fmm_get_mem_info(const void *address, HsaPointerInfo *info)
info->Type = HSA_POINTER_REGISTERED_GRAPHICS;
else if (vm_obj->userptr)
info->Type = HSA_POINTER_REGISTERED_USER;
else if (vm_obj->handle == 0)
info->Type = HSA_POINTER_RESERVED_ADDR;
else
info->Type = HSA_POINTER_ALLOCATED;