summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/resource9.h
diff options
context:
space:
mode:
authorPatrick Rudolph <siro@das-labor.org>2015-09-30 16:42:10 +0200
committerAxel Davy <axel.davy@ens.fr>2016-02-04 22:12:17 +0100
commit1a893ac8869a0be08582f3b224d1a92ff37fc400 (patch)
tree6912bfddcb4c3f75a5b7343fd46dc1738d496ca5 /src/gallium/state_trackers/nine/resource9.h
parenta961ec335d5f38c07181e4956341c9b4cca59fa4 (diff)
downloadexternal_mesa3d-1a893ac8869a0be08582f3b224d1a92ff37fc400.zip
external_mesa3d-1a893ac8869a0be08582f3b224d1a92ff37fc400.tar.gz
external_mesa3d-1a893ac8869a0be08582f3b224d1a92ff37fc400.tar.bz2
st/nine: Implement NineDevice9_GetAvailableTextureMem
Implement a device private memory counter similar to Win 7. Only textures and surfaces increment vidmem and may return ERR_OUTOFVIDEOMEMORY. Vertexbuffers and indexbuffers creation always succeedes, even when out of video memory. Fixes "Vampire: The Masquerade - Bloodlines" allocating resources until crash. Fixes "Age of Conan" allocating resources until crash. Fixes failing WINE test device.c test_vidmem_accounting(). Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
Diffstat (limited to 'src/gallium/state_trackers/nine/resource9.h')
-rw-r--r--src/gallium/state_trackers/nine/resource9.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/nine/resource9.h b/src/gallium/state_trackers/nine/resource9.h
index 906f908..8122257 100644
--- a/src/gallium/state_trackers/nine/resource9.h
+++ b/src/gallium/state_trackers/nine/resource9.h
@@ -45,6 +45,8 @@ struct NineResource9
/* for [GS]etPrivateData/FreePrivateData */
struct util_hash_table *pdata;
+
+ long long size;
};
static inline struct NineResource9 *
NineResource9( void *data )