Re: [PATCH] clk: export __clk_get_hw for re-use in others

From: SeongJae Park
Date: Tue Jan 21 2014 - 22:06:24 EST


Dear Greg, Mike,

May I ask your answer or other opinion, please?

On Mon, Jan 20, 2014 at 5:07 PM, SeongJae Park <sj38.park@xxxxxxxxx> wrote:
> On Mon, Jan 20, 2014 at 4:47 PM, Mike Turquette <mturquette@xxxxxxxxxx> wrote:
>> On Sun, Jan 19, 2014 at 9:37 AM, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>>> On Sun, Jan 19, 2014 at 02:55:07PM +0900, SeongJae Park wrote:
>>>> Following build comes while modprobe process:
>>>> > ERROR: "__clk_get_hw" [drivers/clk/clk-max77686.ko] undefined!
>>>> > make[2]: *** [__modpost] Error 1
>>>> > make[1]: *** [modules] Error 2
>>>>
>>>> Export the symbol to fix it and for other part's usecase.
>>>>
>>>> Signed-off-by: SeongJae Park <sj38.park@xxxxxxxxx>
>>>> ---
>>>> drivers/clk/clk.c | 1 +
>>>> 1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
>>>> index 2b38dc9..3883fba 100644
>>>> --- a/drivers/clk/clk.c
>>>> +++ b/drivers/clk/clk.c
>>>> @@ -575,6 +575,7 @@ struct clk_hw *__clk_get_hw(struct clk *clk)
>>>> {
>>>> return !clk ? NULL : clk->hw;
>>>> }
>>>> +EXPORT_SYMBOL_GPL(__clk_get_hw);
>>>
>>> __ functions should usually only be for "internal" use, why does this
>>> get exported to modules? Why not just put it in a .h file?
>>
>> It was originally used only within the clock core but it is sensible
>> for hardware-specific clock drivers to use this as well. I plan to
>> audit all of the double-underscore functions in
>> include/linux/clk-provider.h for 3.15.
>>
>> Regards,
>> Mike
>>
> Thank you very much for answering about it, Mike.
>
> I agree Greg's indication and think Mike's explanation is reasonable.
>
> So, I think it would be better to just export the symbol now
> because it would be easier for future functions renaming and
> similar issues were solved in this way in past:
> https://lkml.org/lkml/2013/4/15/50
>
> Or, maybe I can change the client code of __clk_get_hw to not use the function.
>
> What do you think would be better to fix this build error? Or, do you
> have better idea?
> I will respect your opinion.
>
> Thanks and Regards.
> SeongJae Park.
>
>>>
>>> greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/