Re: [PATCH v3 01/12] drm: add gem array helpers

From: Gerd Hoffmann
Date: Wed Jun 19 2019 - 07:32:29 EST


> > +struct drm_gem_object_array*
> > +drm_gem_array_from_handles(struct drm_file *drm_file, u32 *handles, u32 nents)
> > +{
> > + struct drm_gem_object_array *objs;
> > + u32 i;
> > +
> > + objs = drm_gem_array_alloc(nents);
> > + if (!objs)
> > + return NULL;
> > +
> > + for (i = 0; i < nents; i++) {
> > + objs->objs[i] = drm_gem_object_lookup(drm_file, handles[i]);
> > + if (!objs->objs[i]) {
> Missing object put for the 0..i-1 handles. Personally I would:

No. drm_gem_array_alloc initializes objs->nents and
drm_gem_array_put_free() loops over the whole array,
skipping NULL pointers.

> > + drm_gem_array_put_free(objs);
> > + return NULL;
> > + }
> > + }
> > + return objs;
> > +}
> Missing EXPORT_SYMBOL?

Oops. I had that fixed. Possibly squashed into the wrong patch.

> Ditto?

Yes.

cheers,
Gerd