From: Marek Olšák Date: Sun, 21 Aug 2016 10:00:01 +0000 (+0200) Subject: radeonsi: return correct eviction stats for NVX_gpu_memory_info X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1c13c71ef8eafde8cc3c3baa0b2fa96c6cf19d6c;p=mesa.git radeonsi: return correct eviction stats for NVX_gpu_memory_info Reviewed-by: Bas Nieuwenhuizen Reviewed-by: Edward O'Callaghan Reviewed-by: Nicolai Hähnle --- diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c index 1b15594bbd2..825e4e98658 100644 --- a/src/gallium/drivers/radeon/r600_pipe_common.c +++ b/src/gallium/drivers/radeon/r600_pipe_common.c @@ -1070,8 +1070,13 @@ static void r600_query_memory_info(struct pipe_screen *screen, info->device_memory_evicted = ws->query_value(ws, RADEON_NUM_BYTES_MOVED) / 1024; - /* Just return the number of evicted 64KB pages. */ - info->nr_device_memory_evictions = info->device_memory_evicted / 64; + + if (rscreen->info.drm_major == 3 && rscreen->info.drm_minor >= 4) + info->nr_device_memory_evictions = + ws->query_value(ws, RADEON_NUM_EVICTIONS); + else + /* Just return the number of evicted 64KB pages. */ + info->nr_device_memory_evictions = info->device_memory_evicted / 64; } struct pipe_resource *r600_resource_create_common(struct pipe_screen *screen,