Re: [PATCH 8/9] gpio: mockup: use the generic 'gpio-line-names' property

From: Andy Shevchenko
Date: Fri Sep 25 2020 - 12:41:09 EST


On Fri, Sep 25, 2020 at 01:40:10PM +0200, Bartosz Golaszewski wrote:
> On Fri, Sep 25, 2020 at 11:03 AM Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > On Thu, Sep 24, 2020 at 01:38:41PM +0200, Bartosz Golaszewski wrote:
> > > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
> > >
> > > GPIO line names are currently created by the driver from the chip label.
> > > We'll want to support custom formats for line names (for instance: to
> > > name all lines the same) for user-space tests so create them in the
> > > module init function and pass them to the driver using the standard
> > > 'gpio-line-names' property.
> >
> > ...
> >
> > > + if (gpio_mockup_named_lines) {
> > > + line_names = gpio_mockup_make_line_names(chip_label,
> > > + ngpio);
> > > + if (!line_names) {
> > > + platform_driver_unregister(&gpio_mockup_driver);
> > > + gpio_mockup_unregister_pdevs();
> > > + return -ENOMEM;
> > > + }
> >
> > > + properties[prop++] = PROPERTY_ENTRY_STRING_ARRAY_LEN(
> > > + "gpio-line-names",
> > > + line_names, ngpio);
> >
> > Forgot to update GPIO_MOCKUP_MAX_PROP?
> >
>
> No, there are still three properties: chip-label, nr-gpios and
> gpio-line-names. Same answer to patch 8/9.
>
> > > + }
> >
> > ...
> >
> > > + kfree_strarray(line_names, line_names ? ngpio : 0);
> >
> > Perhaps you may check for NULL pointer in the kfree_strarray() and drop ternary
> > here?
> >
>
> I did in the previous series and you told me to not to. :)

Hmm... What was my argument? What was wrong with me? free() should be NULL-aware.

--
With Best Regards,
Andy Shevchenko