Re: [PATCH] kernel/cpu.c: Section mismatch warning fix.

From: Ingo Molnar
Date: Mon Nov 03 2008 - 05:15:43 EST



* Rakib Mullick <rakib.mullick@xxxxxxxxx> wrote:

> On 10/31/08, Ingo Molnar <mingo@xxxxxxx> wrote:
> >
> > * Rakib Mullick <rakib.mullick@xxxxxxxxx> wrote:
> >
> >
> > you've tested that on x86, right? Have you checked/reviewed all the
> > non-x86 architecture codepaths:
> >
> > ./arch/m32r/kernel/smpboot.c: notify_cpu_starting(cpu_id);
> > ./arch/cris/arch-v32/kernel/smp.c: notify_cpu_starting(cpu);
> > ./arch/s390/kernel/smp.c: notify_cpu_starting(smp_processor_id());
> > ./arch/x86/mach-voyager/voyager_smp.c: notify_cpu_starting(cpuid);
> > ./arch/x86/kernel/smpboot.c: notify_cpu_starting(cpuid);
> > ./arch/mips/kernel/smp.c: notify_cpu_starting(cpu);
> > ./arch/sparc64/kernel/smp.c: notify_cpu_starting(cpuid);
> > ./arch/ia64/kernel/smpboot.c: notify_cpu_starting(cpuid);
> > ./arch/um/kernel/smp.c: notify_cpu_starting(cpu);
> > ./arch/sparc/kernel/sun4d_smp.c: notify_cpu_starting(cpuid);
> > ./arch/sparc/kernel/sun4m_smp.c: notify_cpu_starting(cpuid);
> > ./arch/powerpc/kernel/smp.c: notify_cpu_starting(cpu);
> > ./arch/alpha/kernel/smp.c: notify_cpu_starting(cpuid);
> > ./arch/sh/kernel/smp.c: notify_cpu_starting(smp_processor_id());
> > ./arch/arm/kernel/smp.c: notify_cpu_starting(cpu);
> >
> > to make sure that they never use this function after free_initmem()?
>
> Above codepaths are basically called during initialization, where
> all the CPU's are initiated. When we complete the initial bootup
> then free_initmem is called. So, If i'm not wrong they're not using
> this function after free_initmem().And notify_cpu_started(cpuid) is
> declared when CPU_HOTPLUG is not set. So, It's safe also from CPU
> hotpluging POV. Am I missing anything?

no, you are right - applied your patch to tip/core/urgent (see the
full commit below). Just wanted to raise the question because your
changelog did not include an analysis of the situation.

Ingo

--------------------------->