lkml.org 
[lkml]   [2015]   [Dec]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] Revert "kernel/stop_machine.c: remove CONFIG_SMP dependencies"
On Fri, 18 Dec 2015 15:35:55 +0530 Sudip Mukherjee <sudipm.mukherjee@gmail.com> wrote:

> This reverts commit 64dab25b058c12f935794cb239089303bda7dbc1.
>
> CONFIG_SMP dependency is needed for some arch like tile, tilegx and
> m32r. They use stop_machine() but they donot have HOTPLUG_CPU and as a
> result their builds are failing with "undefined symbol 'stop_machine'".

Thanks. I had my &&'s and ||'s mixed up. I did this:

--- a/kernel/stop_machine.c~kernel-stop_machinec-remove-config_smp-dependencies-fix
+++ a/kernel/stop_machine.c
@@ -531,8 +531,6 @@ static int __init cpu_stop_init(void)
}
early_initcall(cpu_stop_init);

-#ifdef CONFIG_HOTPLUG_CPU
-
static int __stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus)
{
struct multi_stop_data msdata = {
@@ -630,5 +628,3 @@ int stop_machine_from_inactive_cpu(cpu_s
mutex_unlock(&stop_cpus_mutex);
return ret ?: done.ret;
}
-
-#endif /* CONFIG_HOTPLUG_CPU */
_

Rationale:

stop_machine.o is only built when CONFIG_SMP=y so

#if defined(CONFIG_SMP) || defined(CONFIG_HOTPLUG_CPU)
always evaluates to true, so remove it.




\
 
 \ /
  Last update: 2015-12-19 00:21    [W:1.091 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site