summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/device9.c
diff options
context:
space:
mode:
authorAxel Davy <[email protected]>2015-05-08 16:54:53 +0200
committerAxel Davy <[email protected]>2015-08-21 22:21:46 +0200
commitc57f777b095fbbb6273fccfe7ea2d1ced5fbc0a4 (patch)
treeca1ef1707fcc09b77129b431bae2e7342e89ac6e /src/gallium/state_trackers/nine/device9.c
parent4c126f0b5837227d93e481fb04e43c96b3316413 (diff)
st/nine: Implement EvictManagedResources
EvictManagedResources is used by apps to free the gpu memory of MANAGED textures (which have a cpu memory backing) Signed-off-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/nine/device9.c')
-rw-r--r--src/gallium/state_trackers/nine/device9.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/gallium/state_trackers/nine/device9.c b/src/gallium/state_trackers/nine/device9.c
index 34199ca9ef2..2ac49a13a88 100644
--- a/src/gallium/state_trackers/nine/device9.c
+++ b/src/gallium/state_trackers/nine/device9.c
@@ -548,10 +548,14 @@ NineDevice9_GetAvailableTextureMem( struct NineDevice9 *This )
HRESULT WINAPI
NineDevice9_EvictManagedResources( struct NineDevice9 *This )
{
- /* We don't really need to do anything here, but might want to free up
- * the GPU virtual address space by killing pipe_resources.
- */
- STUB(D3D_OK);
+ struct NineBaseTexture9 *tex;
+
+ DBG("This=%p\n", This);
+ LIST_FOR_EACH_ENTRY(tex, &This->managed_textures, list2) {
+ NineBaseTexture9_UnLoad(tex);
+ }
+
+ return D3D_OK;
}
HRESULT WINAPI