Messages in this thread | | | Date | Sun, 30 Dec 2007 17:03:50 -0800 | From | "Yinghai Lu" <> | Subject | Re: [PATCH] x86_64: clear IO_APIC before enabing apic error vector. v2 |
| |
On Dec 30, 2007 4:28 PM, Adrian Bunk <bunk@kernel.org> wrote: > > On Sun, Dec 30, 2007 at 04:01:39PM -0800, Yinghai Lu wrote: > > On Dec 30, 2007 3:23 PM, Adrian Bunk <bunk@kernel.org> wrote: > > > > > > On Sun, Dec 30, 2007 at 02:42:41PM -0800, Yinghai Lu wrote: > > > > On Dec 30, 2007 2:06 PM, Adrian Bunk <bunk@kernel.org> wrote: > > > > > On Sun, Dec 30, 2007 at 12:48:48PM -0800, Yinghai Lu wrote: > > > > > > On Dec 30, 2007 6:51 AM, Ingo Molnar <mingo@elte.hu> wrote: > > > > > > > > > > > > > > * Yinghai Lu <Yinghai.Lu@Sun.COM> wrote: > > > > > > > > > > > > > > > please check if you can replace the one in the x86-mm > > > > > > > > > > > > > > > > http://git.kernel.org/?p=linux/kernel/git/x86/linux-2.6-x86.git;a=commitdiff;h=ffcbdc220a1520d006a837f33589c7c19ffbeb76 > > > > > > > > > > > > > > > > the updated one avoid one link warning. > > > > > > > > > > > > > > please send delta patches instead - so that we can review the changes. > > > > > > > > > > > > will do that in another patch. > > > > > > > > > > > > > > > > > > > > > this is the updated verison that take enable_IO_APIC as extra call for > > > > > > > > setup_local_APIC to avoid linking warning. > > > > > > > > > > > > > > hm, what link warning did you get? Perhaps the following __cpuinit: > > > > > > > > > > > > WARNING: vmlinux.o(.text+0x163d5): Section mismatch: reference to > > > > > > .init.text:enable_IO_APIC (between 'setup_local_APIC' and > > > > > > 'apic_is_clustered_box') > > > > > > > > > > So you are doing complicated things for silencing the warning (there is > > > > > an easier ways for achieving it), but the real bug that you will get an > > > > > Oops when calling enable_IO_APIC() after bootup since it already got > > > > > freed stays? > > > > > > > > the enable_IO_APIC is actually doing clear_IO_APIC. and it is only > > > > called by BSP via setup_local_APIC > > > > and it is not called again after bootup > > > > > > OK, this was a bit hidden inside your pointer games. > > > > > > Please send a patch that ignores the warning (and therefore doesn't do > > > these pointer games), and I'll fix the warning in a followup patch. > > > > the old one is in x86-mm tree > > > > http://git.kernel.org/?p=linux/kernel/git/x86/linux-2.6-x86.git;a=commitdiff;h=ffcbdc220a1520d006a837f33589c7c19ffbeb76 > >... > > Sorry for the dumb question, but what in > > + if (!smp_processor_id() && !skip_ioapic_setup && nr_ioapics) > + enable_IO_APIC(); > > guarantees that this call doesn't happen when you hotplug CPU 0 ? >
if CPU 0 (BSP) can be hotplug, it will be restarted via smp_callin. and the delta function call patch will use setup_local_APIC(NULL), then it will be safe.
YH
| |