Re: [PATCH v3 2/6] iio: light: Add gain-time-scale helpers
From: Andy Shevchenko
Date: Tue Mar 14 2023 - 07:14:31 EST
On Tue, Mar 14, 2023 at 06:19:35AM +0000, Vaittinen, Matti wrote:
> On 3/13/23 15:14, Andy Shevchenko wrote:
> > On Mon, Mar 13, 2023 at 02:56:59PM +0200, Matti Vaittinen wrote:
> >> On 3/12/23 18:51, Jonathan Cameron wrote:
> >>> On Mon, 6 Mar 2023 14:52:57 +0200
> >>> Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> >>>> On Mon, Mar 06, 2023 at 11:17:15AM +0200, Matti Vaittinen wrote:
...
> >>>>> +EXPORT_SYMBOL_NS_GPL(iio_gts_total_gain_to_scale, IIO_GTS_HELPER);
> >>>>
> >>>> I would say _HELPER part is too much, but fine with me.
> >>>
> >>> Hmm. I think I like the HELPER bit as separates it from being a driver.
> >>> Of course I might change my mind after a few sleeps.
> >>
> >> Ever considered a career as a politician? ;) (No offense intended - and feel
> >> free to change your mind on this. I don't expect this to be done tomorrow)
> >
> > It will be a one liner in the provider if you use DEFAULT_SYMBOL_NAMESPACE
> > definition.
>
> Oh. I didn't know about DEFAULT_SYMBOL_NAMESPACE - or if I did, I had
> forgot it. My memory has never been great and seems to be getting worse
> all the time...
>
> I don't know what to think of this define though. I can imagine that
> someone who is not familiar with it could be very confused as to why the
> symbols are not found even though EXPORT_SYMBOL or EXPORT_SYMBOL_GPL are
> used. OTOH, I think I once saw an error about symbols being in a
> namespace (when trying to use one without the namespace). This should
> probably just be a good enough hint for finding out what's going on.
>
> Luckily, I think all the exports in this case were oneliners even with
> the namespace explicitly spelled. Well, I think that for one or two
> exports the semicolon did slip to col 81 or 82 - but I am not sure if
> fixing this weighs more than the clarity of explicitly showing the
> namespace in export.
>
> Well, I guess I can go with either of these ways - do you have a strong
> opinion on using the DEFAULT_SYMBOL_NAMESPACE?
If you asking me, I'm fine with either way. Usually the latter makes sense
when we expect APIs in the certain module to:
1) always belong to the single namespace, *and / or*
2) be expanded in the future w/o bothering about their (default) NS, *and not*
3) be a single exported function for the feasible future.
Also you made a good point about line length, but with all respect, I prefer
100 than 80 and I do not believe we ever will have function name + NS longer
than that.
--
With Best Regards,
Andy Shevchenko