summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2017-12-07 14:47:32 -0700
committerBrian Paul <[email protected]>2017-12-12 09:44:59 -0700
commitdde8309cdea5c739983693650105b2f993c5a71c (patch)
tree790ef6b37556111beb78ead1107fd52bcf5ded2e /src/gallium/auxiliary
parent09b69828a3521283c332053d8d26fdc5022d4b7f (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 <[email protected]> Reviewed-by: Charmaine Lee <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary')
-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);