From 39587efda62b94375f8b75f890df1491e35741a7 Mon Sep 17 00:00:00 2001 From: foreman Date: Wed, 6 Nov 2019 19:47:10 -0500 Subject: [PATCH] P4 to Git Change 2026174 by eshcherb@evgeny-hip on 2019/11/06 19:37:26 SWDEV-197289 - tracing callbacks call fix Affected files ... ... //depot/stg/opencl/drivers/opencl/api/hip/hip_prof_api.h#5 edit --- hipamd/api/hip/hip_prof_api.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/hipamd/api/hip/hip_prof_api.h b/hipamd/api/hip/hip_prof_api.h index 1d405dc249..9d6db95ba5 100644 --- a/hipamd/api/hip/hip_prof_api.h +++ b/hipamd/api/hip/hip_prof_api.h @@ -189,18 +189,23 @@ class api_callbacks_spawner_t { void call() { hip_api_callback_t fun = entry(cid_).fun; void* arg = entry(cid_).arg; - if (fun != NULL) fun(HIP_DOMAIN_ID, cid_, api_data_, arg); + if (fun != NULL) { + fun(HIP_DOMAIN_ID, cid_, api_data_, arg); + api_data_->phase = ACTIVITY_API_PHASE_EXIT; + } } ~api_callbacks_spawner_t() { - if (api_data_ == NULL) return; + if (!is_enabled()) return; - hip_act_callback_t act = entry(cid_).act; - void* a_arg = entry(cid_).a_arg; - hip_api_callback_t fun = entry(cid_).fun; - void* arg = entry(cid_).arg; - if (act != NULL) act(cid_, NULL, api_data_, a_arg); - if (fun != NULL) fun(HIP_DOMAIN_ID, cid_, api_data_, arg); + if (api_data_ != NULL) { + hip_api_callback_t fun = entry(cid_).fun; + void* arg = entry(cid_).arg; + hip_act_callback_t act = entry(cid_).act; + void* a_arg = entry(cid_).a_arg; + if (fun != NULL) fun(HIP_DOMAIN_ID, cid_, api_data_, arg); + if (act != NULL) act(cid_, NULL, NULL, a_arg); + } callbacks_table.sem_release(cid_); }