wsl/hsakmt: rename vendor_packet_support
to vendor_packet_process. :1 process vender specific packet (acquire_mem, handle signal, update rptr) :0 skip vender specific packet (handle signal by cpu, update rptr by gpu) Signed-off-by: Flora Cui <flora.cui@amd.com> Reviewed-by: Longlong Yao <Longlong.Yao@amd.com> Part-of: <http://10.67.69.192/wsl/libhsakmt/-/merge_requests/35>
Этот коммит содержится в:
коммит произвёл
Frank Min
родитель
5c13bc7509
Коммит
954807feff
+2
-2
@@ -43,8 +43,8 @@ int PAGE_SHIFT;
|
||||
bool is_svm_api_supported;
|
||||
/* zfb is mainly used during emulation */
|
||||
int zfb_support;
|
||||
/* handle vendor specific packet */
|
||||
int vendor_packet_support;
|
||||
/* handle vendor specific packet. :1 process 0:skip */
|
||||
int vendor_packet_process;
|
||||
/* enable vendor packet in hsa-runtime*/
|
||||
int enable_vendor_packet;
|
||||
/* check available system memory before allocation */
|
||||
|
||||
+1
-1
@@ -43,7 +43,7 @@ extern pthread_mutex_t hsakmt_mutex;
|
||||
extern bool is_dgpu;
|
||||
extern bool is_svm_api_supported;
|
||||
extern int zfb_support;
|
||||
extern int vendor_packet_support;
|
||||
extern int vendor_packet_process;
|
||||
extern int enable_vendor_packet;
|
||||
extern bool check_avail_sysram;
|
||||
extern size_t max_single_alloc_size;
|
||||
|
||||
@@ -122,7 +122,7 @@ static HSAKMT_STATUS init_vars_from_env(void) {
|
||||
/* Check whether to handle vendor specific aql packet */
|
||||
envvar = getenv("WSLKMT_VENDOR_PACKET");
|
||||
if (envvar)
|
||||
vendor_packet_support = atoi(envvar);
|
||||
vendor_packet_process = atoi(envvar);
|
||||
|
||||
/* Decide whether hsa-runtime dispatch vendor packet */
|
||||
envvar = getenv("WSL_ENABLE_VENDOR_PACKET");
|
||||
|
||||
@@ -824,7 +824,7 @@ hsa_status_t ComputeQueue::VendorSpecificAqlToPm4(char *cpu, amd_aql_pm4_ib *pac
|
||||
uint32_t* pm4_addr = reinterpret_cast<uint32_t*>((static_cast<uint64_t>(packet->ib_jump_cmd[2]) << 32) | (static_cast<uint64_t>(packet->ib_jump_cmd[1]) & ~3ull));
|
||||
uint32_t pm4_size = packet->ib_jump_cmd[3]&0xfffff;
|
||||
debug_print("queue %p %s VENDOR_SPECIFIC pkt pm4_addr %p pm4_size %" PRIx64 " cs=%" PRIx64"\n",
|
||||
ring, vendor_packet_support ? "process" : "skip", pm4_addr, pm4_size,
|
||||
ring, vendor_packet_process ? "process" : "skip", pm4_addr, pm4_size,
|
||||
packet->completion_signal.handle);
|
||||
for (int i = 0; i < pm4_size; i++) {
|
||||
debug_print("pm4_addr[%d]=%#x\n", i, pm4_addr[i]);
|
||||
@@ -832,7 +832,7 @@ hsa_status_t ComputeQueue::VendorSpecificAqlToPm4(char *cpu, amd_aql_pm4_ib *pac
|
||||
|
||||
int i = ib_size;
|
||||
|
||||
if (vendor_packet_support) {
|
||||
if (vendor_packet_process) {
|
||||
int major = device->Major();
|
||||
memcpy(cpu+i, pm4_addr, pm4_size * sizeof(uint32_t));
|
||||
i += pm4_size * sizeof(uint32_t);
|
||||
|
||||
Ссылка в новой задаче
Block a user