Re: [PATCH] cpufreq: do not mark s3c2410_plls_add as __init

From: Krzysztof Kozlowski
Date: Tue Nov 17 2015 - 19:44:58 EST


On 17.11.2015 18:01, Arnd Bergmann wrote:
> On Tuesday 17 November 2015 10:57:48 Krzysztof Kozlowski wrote:
>> On 17.11.2015 07:17, Arnd Bergmann wrote:
>>> On Monday 16 November 2015 23:36:42 Rafael J. Wysocki wrote:
>>>>
>>>> This should go in through the Samsung tree, so I'll leave it for them to pick
>>>> it up (at least for the time being).
>>>
>>> Ok, fair enough. Kukjin or Krzysztof, can you pick this up?
>>
>> Sure.
>>
>> As for the patch I think everything can be converted to init/initdata
>> (as in attachment).
>>
>
> I don't think so:
>
> static struct subsys_interface s3c2442_plls169344_interface __initdata = {
> .name = "s3c2442_plls169344",
> .subsys = &s3c2442_subsys,
> .add_dev = s3c2440_plls169344_add,
> };
>
> This gets passed into subsys_interface_register(), which is not __init
> in turn. subsys_interface_register() then goes on to add
> s3c2442_plls169344_interface into a linked list that is traversed
> at runtime, but the __initdata section gets discarded so you now
> have a broken list.

Ah, yes, so the patch is fine:

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>

Best regards,
Krzysztof
--
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/