ac/sqtt,radv: Split internal and API hash in PSO correlations

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24371>
This commit is contained in:
Friedrich Vock
2023-07-28 17:26:53 +02:00
committed by Marge Bot
parent d5f1c9fb4b
commit be0e3e8e09
4 changed files with 5 additions and 5 deletions

View File

@@ -121,7 +121,7 @@ ac_get_expected_buffer_size(struct radeon_info *rad_info, const struct ac_sqtt_d
}
bool
ac_sqtt_add_pso_correlation(struct ac_sqtt *sqtt, uint64_t pipeline_hash)
ac_sqtt_add_pso_correlation(struct ac_sqtt *sqtt, uint64_t pipeline_hash, uint64_t api_hash)
{
struct rgp_pso_correlation *pso_correlation = &sqtt->rgp_pso_correlation;
struct rgp_pso_correlation_record *record;
@@ -130,7 +130,7 @@ ac_sqtt_add_pso_correlation(struct ac_sqtt *sqtt, uint64_t pipeline_hash)
if (!record)
return false;
record->api_pso_hash = pipeline_hash;
record->api_pso_hash = api_hash;
record->pipeline_hash[0] = pipeline_hash;
record->pipeline_hash[1] = pipeline_hash;
memset(record->api_level_obj_name, 0, sizeof(record->api_level_obj_name));

View File

@@ -534,7 +534,7 @@ struct rgp_sqtt_marker_pipeline_bind {
static_assert(sizeof(struct rgp_sqtt_marker_pipeline_bind) == 12,
"rgp_sqtt_marker_pipeline_bind doesn't match RGP spec");
bool ac_sqtt_add_pso_correlation(struct ac_sqtt *sqtt, uint64_t pipeline_hash);
bool ac_sqtt_add_pso_correlation(struct ac_sqtt *sqtt, uint64_t pipeline_hash, uint64_t api_hash);
bool ac_sqtt_add_code_object_loader_event(struct ac_sqtt *sqtt, uint64_t pipeline_hash,
uint64_t base_address);

View File

@@ -1159,7 +1159,7 @@ radv_register_pipeline(struct radv_device *device, struct radv_pipeline *pipelin
bool result;
uint64_t base_va = ~0;
result = ac_sqtt_add_pso_correlation(&device->sqtt, pipeline->pipeline_hash);
result = ac_sqtt_add_pso_correlation(&device->sqtt, pipeline->pipeline_hash, pipeline->pipeline_hash);
if (!result)
return VK_ERROR_OUT_OF_HOST_MEMORY;

View File

@@ -1082,7 +1082,7 @@ si_sqtt_register_pipeline(struct si_context* sctx, struct si_sqtt_fake_pipeline
{
assert(!si_sqtt_pipeline_is_registered(sctx->sqtt, pipeline->code_hash));
bool result = ac_sqtt_add_pso_correlation(sctx->sqtt, pipeline->code_hash);
bool result = ac_sqtt_add_pso_correlation(sctx->sqtt, pipeline->code_hash, pipeline->code_hash);
if (!result)
return false;