Re: [PATCH 5/5] cmd640: add __init attribute

From: David Miller
Date: Tue Jul 26 2016 - 18:26:15 EST


From: Julia Lawall <Julia.Lawall@xxxxxxx>
Date: Mon, 18 Apr 2016 16:55:38 +0200

> Add __init attribute on a function that is only called from other __init
> functions and that is not inlined, at least with gcc version 4.8.4 on an
> x86 machine with allyesconfig. Currently, the function is put in the
> .text.unlikely segment. Declaring it as __init will cause it to be put in
> the .init.text and to disappear after initialization.
>
> The result of objdump -x on the function before the change is as follows:
>
> 0000000000000000 l F .text.unlikely 00000000000000e4 cmd640x_init_one
>
> And after the change it is as follows:
>
> 00000000000000d2 l F .init.text 00000000000000df cmd640x_init_one
>
> Done with the help of Coccinelle. The semantic patch checks for local
> static non-init functions that are called from an __init function and are
> not called from any other function.
>
> Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>

Applied.