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:

committed by
Marge Bot

parent
d5f1c9fb4b
commit
be0e3e8e09
@@ -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));
|
||||
|
@@ -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);
|
||||
|
@@ -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;
|
||||
|
||||
|
@@ -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;
|
||||
|
||||
|
Reference in New Issue
Block a user