diff options
author | Marcin Slusarz <marcin.slusarz@gmail.com> | 2012-06-14 21:48:46 +0200 |
---|---|---|
committer | Marcin Slusarz <marcin.slusarz@gmail.com> | 2012-06-14 23:38:28 +0200 |
commit | fc782bcbf04f036990f69b14e01304e1e6dc8fd1 (patch) | |
tree | 5d863454f47887921ff77829a1aede971e4e9ae5 | |
parent | 169a0ae40aed27e3f61ac5989b05f0014dab6525 (diff) | |
download | external_mesa3d-fc782bcbf04f036990f69b14e01304e1e6dc8fd1.zip external_mesa3d-fc782bcbf04f036990f69b14e01304e1e6dc8fd1.tar.gz external_mesa3d-fc782bcbf04f036990f69b14e01304e1e6dc8fd1.tar.bz2 |
nv50,nvc0: fix stream output target buffer leak
It manifests at exit as:
"WARNING: destroying GPU memory cache with some buffers still in use"
-rw-r--r-- | src/gallium/drivers/nv50/nv50_state.c | 1 | ||||
-rw-r--r-- | src/gallium/drivers/nvc0/nvc0_state.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv50/nv50_state.c b/src/gallium/drivers/nv50/nv50_state.c index 81c3fa2..2052f91 100644 --- a/src/gallium/drivers/nv50/nv50_state.c +++ b/src/gallium/drivers/nv50/nv50_state.c @@ -983,6 +983,7 @@ nv50_so_target_destroy(struct pipe_context *pipe, struct nv50_so_target *targ = nv50_so_target(ptarg); if (targ->pq) pipe->destroy_query(pipe, targ->pq); + pipe_resource_reference(&targ->pipe.buffer, NULL); FREE(targ); } diff --git a/src/gallium/drivers/nvc0/nvc0_state.c b/src/gallium/drivers/nvc0/nvc0_state.c index cce2a48..1bd5434 100644 --- a/src/gallium/drivers/nvc0/nvc0_state.c +++ b/src/gallium/drivers/nvc0/nvc0_state.c @@ -899,6 +899,7 @@ nvc0_so_target_destroy(struct pipe_context *pipe, { struct nvc0_so_target *targ = nvc0_so_target(ptarg); pipe->destroy_query(pipe, targ->pq); + pipe_resource_reference(&targ->pipe.buffer, NULL); FREE(targ); } |