On Fri, 18 Dec 2015 15:35:55 +0530 Sudip Mukherjee <sudipm.mukher...@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.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to