MADT enumeration for x86_64

elekktretterr at exemail.com.au elekktretterr at exemail.com.au
Thu Sep 23 05:26:55 PDT 2010


> Hi,
>
> Last year sephe implemented MADT enumeration for i386. These changes
> were missing for x86_64. I ported them to x86_64 and now my HP Compaq
> 6710b laptop is booting SMP (without APIC_IO) on x86_64. I'd like to
> commit the changes if no one objects. Almost all changes are identical
> to what sephe made.
>
> http://leaf.dragonflybsd.org/~mneumann/madt_enum.patch
> http://leaf.dragonflybsd.org/~mneumann/madt_enum.diff
>
> If you give me go, I'll commit.

I'd like to note while my laptop works using the original MADT enumeration
for i386, APIC_IO has to be disabled otherwise it panics. I believe
FreeBSD doesn't even have an APIC_IO option in the config. Shouldn't
"options SMP" and APIC_IO be merged? I can't remember how many times I
accidently compiled kernel with APIC_IO and screwed up.

Isn't there a way to detect if APIC_IO can be used on particular hardware
and turn it on/off as necessary? What do other operating systems do? If
this could be improved for 2.8 it would be great.

Thanks,
Petr







More information about the Kernel mailing list