[PATCH sched-devel 4/7] cpuisol: Move on-stack array used for boot cmd parsing into __initdata

2008-02-22 Thread Max Krasnyansky
Suggested by Andrew Morton:

  isolated_cpu_setup() has an on-stack array of NR_CPUS integers.  This
  will consume 4k of stack on ia64 (at least).  We'll just squeak through
  for a ittle while, but this needs to be fixed.  Just move it into
  __initdata.

Signed-off-by: Max Krasnyansky <[EMAIL PROTECTED]>
---
 kernel/cpu.c |   15 ++-
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/kernel/cpu.c b/kernel/cpu.c
index a0ac386..b3af739 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -446,15 +446,20 @@ out:
 
 #ifdef CONFIG_CPUISOL
 /* Setup the mask of isolated cpus */
+
+static int __initdata isolcpu[NR_CPUS];
+
 static int __init isolated_cpu_setup(char *str)
 {
-   int ints[NR_CPUS], i;
+   int i, n;
+
+   str = get_options(str, ARRAY_SIZE(isolcpu), isolcpu);
+   n   = isolcpu[0];
 
-   str = get_options(str, ARRAY_SIZE(ints), ints);
cpus_clear(cpu_isolated_map);
-   for (i = 1; i <= ints[0]; i++)
-   if (ints[i] < NR_CPUS)
-   cpu_set(ints[i], cpu_isolated_map);
+   for (i = 1; i <= n; i++)
+   if (isolcpu[i] < NR_CPUS)
+   cpu_set(isolcpu[i], cpu_isolated_map);
return 1;
 }
 
-- 
1.5.4.1

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


[PATCH sched-devel 4/7] cpuisol: Move on-stack array used for boot cmd parsing into __initdata

2008-02-22 Thread Max Krasnyansky
Suggested by Andrew Morton:

  isolated_cpu_setup() has an on-stack array of NR_CPUS integers.  This
  will consume 4k of stack on ia64 (at least).  We'll just squeak through
  for a ittle while, but this needs to be fixed.  Just move it into
  __initdata.

Signed-off-by: Max Krasnyansky [EMAIL PROTECTED]
---
 kernel/cpu.c |   15 ++-
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/kernel/cpu.c b/kernel/cpu.c
index a0ac386..b3af739 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -446,15 +446,20 @@ out:
 
 #ifdef CONFIG_CPUISOL
 /* Setup the mask of isolated cpus */
+
+static int __initdata isolcpu[NR_CPUS];
+
 static int __init isolated_cpu_setup(char *str)
 {
-   int ints[NR_CPUS], i;
+   int i, n;
+
+   str = get_options(str, ARRAY_SIZE(isolcpu), isolcpu);
+   n   = isolcpu[0];
 
-   str = get_options(str, ARRAY_SIZE(ints), ints);
cpus_clear(cpu_isolated_map);
-   for (i = 1; i = ints[0]; i++)
-   if (ints[i]  NR_CPUS)
-   cpu_set(ints[i], cpu_isolated_map);
+   for (i = 1; i = n; i++)
+   if (isolcpu[i]  NR_CPUS)
+   cpu_set(isolcpu[i], cpu_isolated_map);
return 1;
 }
 
-- 
1.5.4.1

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