* [PATCH] 2.5: mark variables as __initdata
@ 2002-06-19 17:47 Robert Love
0 siblings, 0 replies; only message in thread
From: Robert Love @ 2002-06-19 17:47 UTC (permalink / raw)
To: linux-kernel; +Cc: davej
The attached patch marks the following variables with __initdata:
arch/i386/kernel/mpparse.c :: static unsigned int num_processors
arch/i386/kernel/smpboot.c :: static int smp_b_stepping
arch/i386/kernel/smpboot.c :: static int max_cpus
The data is static and only used by __init functions so can successfully
be jettisoned after boot. Compiled and booted successfully on an SMP
machine.
I also set max_cpus to NR_CPUS instead of -1. Besides being the
logically correct value and simplifying a loop elsewhere, this change
allows NR_CPUS to be set to various values other than the normal 32
which is growing in utility with the hotplug CPU changes now in
mainline.
Patch is against 2.5.23.
Robert Love
diff -urN linux-2.5.23/arch/i386/kernel/mpparse.c linux/arch/i386/kernel/mpparse.c
--- linux-2.5.23/arch/i386/kernel/mpparse.c Tue Jun 18 19:11:51 2002
+++ linux/arch/i386/kernel/mpparse.c Wed Jun 19 10:32:10 2002
@@ -64,7 +64,7 @@
unsigned int boot_cpu_physical_apicid = -1U;
unsigned int boot_cpu_logical_apicid = -1U;
/* Internal processor count */
-static unsigned int num_processors;
+static unsigned int __initdata num_processors;
/* Bitmask of physically existing CPUs */
unsigned long phys_cpu_present_map;
diff -urN linux-2.5.23/arch/i386/kernel/smpboot.c linux/arch/i386/kernel/smpboot.c
--- linux-2.5.23/arch/i386/kernel/smpboot.c Tue Jun 18 19:11:54 2002
+++ linux/arch/i386/kernel/smpboot.c Wed Jun 19 10:32:10 2002
@@ -50,11 +50,11 @@
#include <asm/tlbflush.h>
#include <asm/smpboot.h>
-/* Set if we find a B stepping CPU */
-static int smp_b_stepping;
+/* Set if we find a B stepping CPU */
+static int __initdata smp_b_stepping;
/* Setup configured maximum number of CPUs to activate */
-static int max_cpus = -1;
+static int __initdata max_cpus = NR_CPUS;
/* Number of siblings per CPU package */
int smp_num_siblings = 1;
@@ -1146,7 +1146,7 @@
if (!(phys_cpu_present_map & (1 << bit)))
continue;
- if ((max_cpus >= 0) && (max_cpus <= cpucount+1))
+ if (max_cpus <= cpucount+1)
continue;
do_boot_cpu(apicid);
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2002-06-19 17:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-06-19 17:47 [PATCH] 2.5: mark variables as __initdata Robert Love
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®