Remove the __init annotation from free_raw_capacity() to avoid
the following warning.
The function init_cpu_capacity_callback() references the
function __init free_raw_capacity().
WARNING: vmlinux.o(.text+0x425cc0): Section mismatch in reference
from the function init_cpu_capacity_callback() to the function
.init.text:free_raw_capacity().
Signed-off-by: Prasad Sodagudi <[email protected]>
---
drivers/base/arch_topology.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
index 41be9ff..3da53cc 100644
--- a/drivers/base/arch_topology.c
+++ b/drivers/base/arch_topology.c
@@ -96,7 +96,7 @@ static int register_cpu_capacity_sysctl(void)
static u32 capacity_scale;
static u32 *raw_capacity;
-static int __init free_raw_capacity(void)
+static int free_raw_capacity(void)
{
kfree(raw_capacity);
raw_capacity = NULL;
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
On 25-09-17, 15:51, Prasad Sodagudi wrote:
> Remove the __init annotation from free_raw_capacity() to avoid
> the following warning.
>
> The function init_cpu_capacity_callback() references the
> function __init free_raw_capacity().
> WARNING: vmlinux.o(.text+0x425cc0): Section mismatch in reference
> from the function init_cpu_capacity_callback() to the function
> .init.text:free_raw_capacity().
>
> Signed-off-by: Prasad Sodagudi <[email protected]>
> ---
> drivers/base/arch_topology.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
> index 41be9ff..3da53cc 100644
> --- a/drivers/base/arch_topology.c
> +++ b/drivers/base/arch_topology.c
> @@ -96,7 +96,7 @@ static int register_cpu_capacity_sysctl(void)
> static u32 capacity_scale;
> static u32 *raw_capacity;
>
> -static int __init free_raw_capacity(void)
> +static int free_raw_capacity(void)
> {
> kfree(raw_capacity);
> raw_capacity = NULL;
So we need the __init thing only when cpufreq support isn't there in the kernel
and I am not sure if we want to add more ifdef hackery in the declaration of
free_raw_capacity().
Acked-by: Viresh Kumar <[email protected]>
--
viresh