From dde8309cdea5c739983693650105b2f993c5a71c Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Dec 2017 14:47:32 -0700 Subject: [PATCH] gallium/aux: include nr_samples in util_resource_size() computation MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This function is only used in two places: 1. VMware driver, but only for HUD reporting 2. st/nine state tracker, used for texture memory accounting Fixes: a69efa9482d ("util: add new util_resource_size() function in u_resource.[ch]") Reviewed-by: Roland Scheidegger Reviewed-by: Charmaine Lee Reviewed-by: Marek Olšák --- src/gallium/auxiliary/util/u_resource.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/util/u_resource.c b/src/gallium/auxiliary/util/u_resource.c index 66caaae8405..ed6c1504fd8 100644 --- a/src/gallium/auxiliary/util/u_resource.c +++ b/src/gallium/auxiliary/util/u_resource.c @@ -42,6 +42,7 @@ util_resource_size(const struct pipe_resource *res) unsigned depth = res->depth0; unsigned size = 0; unsigned level; + unsigned samples = MAX2(1, res->nr_samples); for (level = 0; level <= res->last_level; level++) { unsigned slices; @@ -54,7 +55,7 @@ util_resource_size(const struct pipe_resource *res) slices = res->array_size; size += (util_format_get_nblocksy(res->format, height) * - util_format_get_stride(res->format, width) * slices); + util_format_get_stride(res->format, width) * slices * samples); width = u_minify(width, 1); height = u_minify(height, 1); -- 2.30.2