From 2f4a112ec4a4c45bdc99634af113531ddd7914a2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marcin=20=C5=9Alusarz?= Date: Mon, 15 Jun 2020 13:48:43 +0200 Subject: [PATCH] st/mesa: fix reporting of float perf counters max value MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Some Piglit tests (rightfully) fail because of min >= max when exposed to perf counters that do not explicitly define their max value. Failing tests: spec/amd_performance_monitor/api/test_counter_info spec/amd_performance_monitor/vc4/test_counter_info u32/u64 changes are no-ops. Fixes: 4cd1cfb9831d ("st/mesa: implement GL_AMD_performance_monitor") Signed-off-by: Marcin Ślusarz Reviewed-by: Marek Olšák Part-of: --- src/mesa/state_tracker/st_cb_perfmon.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mesa/state_tracker/st_cb_perfmon.c b/src/mesa/state_tracker/st_cb_perfmon.c index 8025cb4a452..0f5aa371d6a 100644 --- a/src/mesa/state_tracker/st_cb_perfmon.c +++ b/src/mesa/state_tracker/st_cb_perfmon.c @@ -404,17 +404,17 @@ st_InitPerfMonitorGroups(struct gl_context *ctx) case PIPE_DRIVER_QUERY_TYPE_MICROSECONDS: case PIPE_DRIVER_QUERY_TYPE_HZ: c->Minimum.u64 = 0; - c->Maximum.u64 = info.max_value.u64 ? info.max_value.u64 : -1; + c->Maximum.u64 = info.max_value.u64 ? info.max_value.u64 : UINT64_MAX; c->Type = GL_UNSIGNED_INT64_AMD; break; case PIPE_DRIVER_QUERY_TYPE_UINT: c->Minimum.u32 = 0; - c->Maximum.u32 = info.max_value.u32 ? info.max_value.u32 : -1; + c->Maximum.u32 = info.max_value.u32 ? info.max_value.u32 : UINT32_MAX; c->Type = GL_UNSIGNED_INT; break; case PIPE_DRIVER_QUERY_TYPE_FLOAT: c->Minimum.f = 0.0; - c->Maximum.f = info.max_value.f ? info.max_value.f : -1; + c->Maximum.f = info.max_value.f ? info.max_value.f : FLT_MAX; c->Type = GL_FLOAT; break; case PIPE_DRIVER_QUERY_TYPE_PERCENTAGE: -- 2.30.2