lkml.org 
[lkml]   [2007]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: + x86-convert-cpuinfo_x86-array-to-a-per_cpu-array-v2.patch added to -mm tree
On 9/21/07, akpm@linux-foundation.org <akpm@linux-foundation.org> wrote:
>
> The patch titled
> x86: Convert cpuinfo_x86 array to a per_cpu array
> has been added to the -mm tree. Its filename is
> x86-convert-cpuinfo_x86-array-to-a-per_cpu-array-v2.patch
>
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>
> See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
> out what to do about this
>
> ------------------------------------------------------
> Subject: x86: Convert cpuinfo_x86 array to a per_cpu array
> From: travis@sgi.com
>
> cpu_data is currently an array defined using NR_CPUS. This means that we
> overallocate since we will rarely really use maximum configured cpus. When
> NR_CPU count is raised to 4096 the size of cpu_data becomes 3,145,728
> bytes.
>
> These changes were adopted from the sparc64 (and ia64) code. An additional
> field was added to cpuinfo_x86 to be a non-ambiguous cpu index. This
> corresponds to the index into a cpumask_t as well as the per_cpu index.
> It's used in various places like show_cpuinfo().
>
> cpu_data is defined to be the boot_cpu_data structure for the
> NON-SMP case.
>
> This patch is based on 2.6.23-rc6 with the prior per_cpu patches
> applied. I can also provide a version based on 2.6.23-rc4-mm1
> which has some different changes.
>
> Signed-off-by: Mike Travis <travis@sgi.com>
> Acked-by: Christoph Lameter <clameter@sgi.com>
> Cc: Andi Kleen <ak@suse.de>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
>
> arch/i386/kernel/acpi/cstate.c | 4 -
> arch/i386/kernel/acpi/processor.c | 2
> arch/i386/kernel/alternative.c | 6 -
> arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c | 4 -
> arch/i386/kernel/cpu/cpufreq/e_powersaver.c | 2
> arch/i386/kernel/cpu/cpufreq/elanfreq.c | 4 -
> arch/i386/kernel/cpu/cpufreq/longhaul.c | 4 -
> arch/i386/kernel/cpu/cpufreq/longrun.c | 4 -
> arch/i386/kernel/cpu/cpufreq/p4-clockmod.c | 4 -
> arch/i386/kernel/cpu/cpufreq/powernow-k6.c | 2
> arch/i386/kernel/cpu/cpufreq/powernow-k7.c | 2
> arch/i386/kernel/cpu/cpufreq/sc520_freq.c | 4 -
> arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c | 6 -
> arch/i386/kernel/cpu/cpufreq/speedstep-lib.c | 2
> arch/i386/kernel/cpu/intel_cacheinfo.c | 8 +-
> arch/i386/kernel/cpu/proc.c | 9 +-
> arch/i386/kernel/cpuid.c | 2
> arch/i386/kernel/microcode.c | 6 -
> arch/i386/kernel/msr.c | 2
> arch/i386/kernel/sched-clock.c | 2
> arch/i386/kernel/smp.c | 2
> arch/i386/kernel/smpboot.c | 45 ++++++------
> arch/i386/kernel/tsc.c | 8 +-
> arch/i386/lib/delay.c | 2
> arch/i386/mach-voyager/voyager_smp.c | 12 +--
> arch/x86_64/kernel/mce.c | 2
> arch/x86_64/kernel/mce_amd.c | 4 -
> arch/x86_64/kernel/setup.c | 18 ++--
> arch/x86_64/kernel/smpboot.c | 44 +++++------
> arch/x86_64/kernel/tsc.c | 4 -
> arch/x86_64/kernel/vsyscall.c | 2
> arch/x86_64/lib/delay.c | 2
> drivers/hwmon/coretemp.c | 6 -
> drivers/hwmon/hwmon-vid.c | 2
> drivers/input/gameport/gameport.c | 2
> drivers/video/geode/video_gx.c | 2
> include/asm-i386/processor.h | 10 +-
> include/asm-i386/topology.h | 4 -
> include/asm-x86_64/processor.h | 10 +-
> include/asm-x86_64/topology.h | 4 -
> 40 files changed, 138 insertions(+), 126 deletions(-)
>
> +++ a/arch/i386/kernel/cpu/cpufreq/elanfreq.c
> @@ -199,7 +199,7 @@ static int elanfreq_target (struct cpufr
>
> static int elanfreq_cpu_init(struct cpufreq_policy *policy)
> {
> - struct cpuinfo_x86 *c = cpu_data;
> + struct cpuinfo_x86 *c = &cpu_data(cpu);
> unsigned int i;
> int result;
>
> @@ -280,7 +280,7 @@ static struct cpufreq_driver elanfreq_dr
>
> static int __init elanfreq_init(void)
> {
> - struct cpuinfo_x86 *c = cpu_data;
> + struct cpuinfo_x86 *c = &cpu_data(cpu);

this is confusing, can you check simmiliar &cpu_data(cpu) to
&cpu_data(0) instead...

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

\
 
 \ /
  Last update: 2007-09-22 00:29    [W:2.182 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site