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'".
Cc: Chris Wilson <[email protected]>
Cc: Ingo Molnar <[email protected]>
Signed-off-by: Sudip Mukherjee <[email protected]>
---
tile build at:
https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618549
tilegx build at:
https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618550
m32r build at:
https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618542
kernel/stop_machine.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
index b07adef..edb6de4 100644
--- a/kernel/stop_machine.c
+++ b/kernel/stop_machine.c
@@ -529,7 +529,7 @@ static int __init cpu_stop_init(void)
}
early_initcall(cpu_stop_init);
-#ifdef CONFIG_HOTPLUG_CPU
+#if defined(CONFIG_SMP) || defined(CONFIG_HOTPLUG_CPU)
static int __stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus)
{
@@ -629,4 +629,4 @@ int stop_machine_from_inactive_cpu(cpu_stop_fn_t fn, void *data,
return ret ?: done.ret;
}
-#endif /* CONFIG_HOTPLUG_CPU */
+#endif /* CONFIG_SMP || CONFIG_HOTPLUG_CPU */
--
1.9.1
On 12/18/2015 05:05 AM, Sudip Mukherjee 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'".
>
> Cc: Chris Wilson <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Signed-off-by: Sudip Mukherjee <[email protected]>
> ---
>
> tile build at:
> https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618549
>
> tilegx build at:
> https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618550
>
> m32r build at:
> https://travis-ci.org/sudipm-mukherjee/parport/jobs/97618542
>
> kernel/stop_machine.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Acked-by: Chris Metcalf <[email protected]> [for tile]
--
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com
On Fri, 18 Dec 2015 15:35:55 +0530 Sudip Mukherjee <[email protected]> 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.
On Fri, Dec 18, 2015 at 03:07:53PM -0800, Andrew Morton wrote:
> On Fri, 18 Dec 2015 15:35:55 +0530 Sudip Mukherjee <[email protected]> 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.
Hi Andrew,
The error is still there. I guess you have been busy. :)
next-20151222 fails with the same error. You can see the m32r defconfig
at https://travis-ci.org/sudipm-mukherjee/parport/jobs/98258267
do you want me to send the patch to you for it?
regards
sudip
On Tue, 22 Dec 2015 11:30:51 +0530 Sudip Mukherjee <[email protected]> wrote:
> > 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.
>
> Hi Andrew,
> The error is still there. I guess you have been busy. :)
>
> next-20151222 fails with the same error. You can see the m32r defconfig
> at https://travis-ci.org/sudipm-mukherjee/parport/jobs/98258267
I forgot to Cc Stephen :(
From: Andrew Morton <[email protected]>
Subject: kernel-stop_machinec-remove-config_smp-dependencies-fix
stop_machine.o is only built if CONFIG_SMP=y, so this ifdef always
evaluates to true.
Cc: Chris Wilson <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Valentin Rothberg <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
---
kernel/stop_machine.c | 4 ----
1 file changed, 4 deletions(-)
diff -puN kernel/stop_machine.c~kernel-stop_machinec-remove-config_smp-dependencies-fix kernel/stop_machine.c
--- 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 */
_
Hi Andrew,
On Mon, 21 Dec 2015 22:59:45 -0800 Andrew Morton <[email protected]> wrote:
>
> On Tue, 22 Dec 2015 11:30:51 +0530 Sudip Mukherjee <[email protected]> wrote:
>
> > > 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.
> >
> > Hi Andrew,
> > The error is still there. I guess you have been busy. :)
> >
> > next-20151222 fails with the same error. You can see the m32r defconfig
> > at https://travis-ci.org/sudipm-mukherjee/parport/jobs/98258267
>
> I forgot to Cc Stephen :(
I wish I had figured this out earlier - last nights build were a blood bath :-(
Anyway, I applied it for today.
--
Cheers,
Stephen Rothwell [email protected]