[PATCH v2] drm/panfrost: Document base field location constraint in panfrost_gem_object
Boris Brezillon
boris.brezillon at collabora.com
Fri Nov 29 14:19:36 UTC 2019
On Fri, 29 Nov 2019 14:13:33 +0000
Steven Price <steven.price at arm.com> wrote:
> On 29/11/2019 13:56, Boris Brezillon wrote:
> > I've spent hours chasing a memory corruption that was caused by
> > insertion of an extra field field before ->base. Let's document the
> > fact that base has to be the first field in panfrost_gem_object.
> >
> > Signed-off-by: Boris Brezillon <boris.brezillon at collabora.com>
>
> This seems to be a limitation imposed by the gem_create_object()
> callback - e.g. it's assumed that kfree() can be directly called on the
> result. Useful to have the documentation though.
Oh, you're right, I didn't catch that one.
>
> Reviewed-by: Steven Price <steven.price at arm.com>
>
> Steve
>
> > ---
> > Changes in v2:
> > * Use the proper prefix in the subject line
> > ---
> > drivers/gpu/drm/panfrost/panfrost_gem.h | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/panfrost/panfrost_gem.h b/drivers/gpu/drm/panfrost/panfrost_gem.h
> > index b3517ff9630c..d480261fc177 100644
> > --- a/drivers/gpu/drm/panfrost/panfrost_gem.h
> > +++ b/drivers/gpu/drm/panfrost/panfrost_gem.h
> > @@ -10,6 +10,10 @@
> > struct panfrost_mmu;
> >
> > struct panfrost_gem_object {
> > + /*
> > + * Must be the first element because we're using some of the
> > + * drm_gem_shmem helpers.
> > + */
> > struct drm_gem_shmem_object base;
> > struct sg_table *sgts;
> >
> >
>
More information about the dri-devel
mailing list