[Mesa-dev] [PATCH 1/2] nvc0: clear out surfaces bufctx before rebinding everything

Ilia Mirkin imirkin at alum.mit.edu
Thu May 19 12:51:26 UTC 2016


Yes, oops. Shouldn't fix any invalidation issues. Could fix unbounded
memory growth due to switching back and forth between cp and 3d without
setting any new images. Please fold this into your series.
On May 19, 2016 4:13 AM, "Samuel Pitoiset" <samuel.pitoiset at gmail.com>
wrote:

Oops? Your patch is based on your gl43 branch with my images series but
this is not yet upstream. ;)

Anyway, the idea sounds good to me and might explain some invalidation
issues, perhaps? I'll have look later.


On 05/19/2016 03:28 AM, Ilia Mirkin wrote:

> Otherwise we can end up in a situation where that bin just grows and
> grows.
>
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> ---
>  src/gallium/drivers/nouveau/nvc0/nvc0_tex.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_tex.c
> b/src/gallium/drivers/nouveau/nvc0/nvc0_tex.c
> index cc5ea5e..2523c20 100644
> --- a/src/gallium/drivers/nouveau/nvc0/nvc0_tex.c
> +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_tex.c
> @@ -963,6 +963,11 @@ nvc0_validate_suf(struct nvc0_context *nvc0, int s)
>     struct nouveau_pushbuf *push = nvc0->base.pushbuf;
>     struct nvc0_screen *screen = nvc0->screen;
>
> +   if (s == 5)
> +      nouveau_bufctx_reset(nvc0->bufctx_cp, NVC0_BIND_CP_SUF);
> +   else
> +      nouveau_bufctx_reset(nvc0->bufctx_3d, NVC0_BIND_3D_SUF);
> +
>     for (int i = 0; i < NVC0_MAX_IMAGES; ++i) {
>        struct pipe_image_view *view = &nvc0->images[s][i];
>        int width, height, depth;
>
>
-- 
-Samuel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160519/d938e0fe/attachment.html>


More information about the mesa-dev mailing list