Re: [PATCH v5 05/10] gpiolib: Add gpio_property_name_length()

Andy Shevchenko
2024-08-23T13:46:34Z

On Fri, Aug 23, 2024 at 03:50:55PM +0800, Chen-Yu Tsai wrote:
> On Thu, Aug 22, 2024 at 10:37 PM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> > On Thu, Aug 22, 2024 at 05:19:58PM +0800, Chen-Yu Tsai wrote:

...

> > > + len = strlen(str);
> >
> > If it has a thousands characters...?
>
> Shouldn't matter much? I suppose using strrchr() as you suggested
> requires one less pass.

Yes, this is the point.

...

> > This can be combined with the above
> >
> > for (const char *const *p = gpio_suffixes; *p; p++) {
> > /*
> > * Find right-most '-' and check if remainder matches suffix.
> > * If no separator found, check for no-name cases.
> > */
> > dash = strrchr(propname, '-');
>
> I believe this line could be moved out of the for-loop. Otherwise it
> looks much more concise compared to my version. I'll omit the comment
> though, as it is just rehashing the kerneldoc description, and now
> that the function is so short, it shouldn't be hard to read.

Agree. And I put comment inside the loop, while it should be outside. But then,
as you said, the function becomes so little that kernel-doc above does the job,
hence no comment in the code needed.

> I'll add you as "Suggested-by".

Fine with me.

> > if (!strcmp(dash ? dash + 1 : propname, *p))
> > return i;
> > }

--
With Best Regards,
Andy Shevchenko