wsl/hsakmt: skip vender specific packet by default

Signed-off-by: Longlong Yao <Longlong.Yao@amd.com>
Reviewed-by: Flora Cui <flora.cui@amd.com>
Reviewed-by: lyndonli <Lyndon.Li@amd.com>
Part-of: <http://10.67.69.192/wsl/libhsakmt/-/merge_requests/25>
This commit is contained in:
Longlong Yao
2024-09-18 19:58:39 -07:00
committed by Frank Min
parent 9587e8b33d
commit 84bfbf8e52
+9 -9
View File
@@ -830,10 +830,10 @@ hsa_status_t ComputeQueue::VendorSpecificAqlToPm4(char *cpu, amd_aql_pm4_ib *pac
debug_print("pm4_addr[%d]=%#x\n", i, pm4_addr[i]);
}
int i = ib_size;
if (vendor_packet_support) {
int major = device->Major();
int i = ib_size;
memcpy(cpu+i, pm4_addr, pm4_size * sizeof(uint32_t));
i += pm4_size * sizeof(uint32_t);
@@ -861,19 +861,19 @@ hsa_status_t ComputeQueue::VendorSpecificAqlToPm4(char *cpu, amd_aql_pm4_ib *pac
i += cmd_util.BuildAtomicMem(signal_addr, TC_OP_ATOMIC_ADD_RTN_64, cpu + i, cache_policy__mec_atomic_mem__bypass, -1);
}
// The ring_rptr is used to record pm4 queue rptr value,
// dispatch readptr position, this is used to share rptr with
// aql queue.
i += cmd_util.BuildAtomicMem((uint64_t *)ring_rptr, TC_OP_ATOMIC_ADD_RTN_64, cpu + i);
ib_size = i;
} else {
if (packet->completion_signal.handle != 0) {
hsakmt_hsa_signal_store_screlease(packet->completion_signal, 0);
}
}
// The ring_rptr is used to record pm4 queue rptr value,
// dispatch readptr position, this is used to share rptr with
// aql queue.
i += cmd_util.BuildAtomicMem((uint64_t *)ring_rptr, TC_OP_ATOMIC_ADD_RTN_64, cpu + i);
ib_size = i;
cmdbuf_aql_frame_write_index++;
packet->header = HSA_PACKET_TYPE_INVALID;
return HSA_STATUS_SUCCESS;