Re: [Fastboot] [PATCH] i386: move apic init in init_IRQs

From: Eric W. Biederman
Date: Tue Nov 01 2005 - 02:43:38 EST


"Protasevich, Natalie" <Natalie.Protasevich@xxxxxxxxxx> writes:

>> The first cpu is brought online much earlier than the rest.
>> So we just need to setup a table for boot cpu earlier. From
>> the looks of it mach-es700 won't work if you compile a
>> uniprocessor kernel for it right now.
>
> Yea, I didn't even try this - but I think it will produce the same
> result with regard to timer IOAPIC rte.
>
>> We need to do this a little later than in mptable but this
>> should be a fairly simple one or two line change.
>
> Yes, it is maybe something like running map_cpu_to_logical_apicid() from
> APIC_init() just before the setup_IO_APIC().

The core piece of the puzzle is cpu_mask_to_apicid(). At the
time we setup the io_apic TARGET_CPUS will just be the bootstrap
processor. So we might be able to get away with hard coding
the bootstrap processor in the non-SMP sections of the ioapic
startup code.

setup_ioapic_dest is going to fix things after we start the
cpus anyway so it should not be a problem.

Does that sound like a sane thing to do?

This code appears to affect all of the subarchitectures but the
default x86 one. So it is clearly not just an ES7000 problem.

Now to figure out why Linus's laptop hates this patch...

Eric

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