summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2017-12-07 14:47:32 -0700
committerAndres Gomez <agomez@igalia.com>2017-12-20 19:40:38 +0200
commit334ae3b0d252331fae68cd7eaa61cef7075a0075 (patch)
tree66ed72214c6ebd1a7ca5909012ed08d00470bd41
parent3730b04e815643c6b7b62fed9d1018267da04f04 (diff)
gallium/aux: include nr_samples in util_resource_size() computation
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 <sroland@vmware.com> Reviewed-by: Charmaine Lee <charmainel@vmware.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit dde8309cdea5c739983693650105b2f993c5a71c)
-rw-r--r--src/gallium/auxiliary/util/u_resource.c3
1 files changed, 2 insertions, 1 deletions
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);