[Mesa-dev] [PATCH 2/8] etnaviv: clear out next pointer when allocating resource
Lucas Stach
l.stach at pengutronix.de
Mon Apr 15 10:31:18 UTC 2019
Am Montag, den 15.04.2019, 12:20 +0200 schrieb Philipp Zabel:
> On Fri, 2019-04-12 at 19:38 +0200, Lucas Stach wrote:
> > We copy the template resource content into the newly allocated resource.
> > If the template derived from a planar resource this leads to a non reference
> > counted copy of the next resource pointer. Make sure to clear this out when
> > allocating a new resource.
> >
> > Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> > ---
> > src/gallium/drivers/etnaviv/etnaviv_resource.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/src/gallium/drivers/etnaviv/etnaviv_resource.c b/src/gallium/drivers/etnaviv/etnaviv_resource.c
> > index 83179d3cd088..77d027ac806b 100644
> > --- a/src/gallium/drivers/etnaviv/etnaviv_resource.c
> > +++ b/src/gallium/drivers/etnaviv/etnaviv_resource.c
> > @@ -274,6 +274,7 @@ etna_resource_alloc(struct pipe_screen *pscreen, unsigned layout,
>
> Context:
>
> rsc = CALLOC_STRUCT(etna_resource);
> if (!rsc)
> > return NULL;
> >
> > rsc->base = *templat;
This copies the content of templat into our resource base, so if
templat has the next pointer set it will also be set in our resource.
> > + rsc->base.next = NULL;
> > rsc->base.screen = pscreen;
> > rsc->base.nr_samples = nr_samples;
> > rsc->layout = layout;
>
> The calloc just above already clears the memory to zero.
See above.
Regards,
Lucas
More information about the mesa-dev
mailing list