Page MenuHomeFreeBSD

Handle X2APIC entries for APICs with an ID < 255.
ClosedPublic

Authored by jhb on May 12 2015, 3:51 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Nov 24, 2:26 PM
Unknown Object (File)
Mon, Nov 18, 11:58 AM
Unknown Object (File)
Sat, Nov 16, 7:57 AM
Unknown Object (File)
Thu, Nov 7, 3:59 PM
Unknown Object (File)
Oct 10 2024, 10:44 PM
Unknown Object (File)
Oct 1 2024, 7:56 AM
Unknown Object (File)
Oct 1 2024, 5:38 AM
Unknown Object (File)
Sep 26 2024, 2:01 AM
Subscribers

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage

Event Timeline

jhb retitled this revision from to Handle X2APIC entries for APICs with an ID < 255..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added a reviewer: kib.

I think this is fine as the quick patch, but could we share the code with madt_parse_apics() and with madt_parse_local_nmi() ? I suppose some short helpers would do it.

sys/x86/acpica/madt.c
311

I think this should be LocalApicId and not Uid.

sys/x86/acpica/madt.c
311

la_acpi_id is supposed to be the ID ACPI uses. It corresponds to the field present in the NMI entry (which is Uid for X2APIC and ProcessorID for plain APIC).

kib edited edge metadata.
This revision is now accepted and ready to land.May 12 2015, 4:27 PM
jhb edited edge metadata.
  • Use helper routines to reduce duplicated code.
This revision now requires review to proceed.May 12 2015, 8:53 PM
kib edited edge metadata.
This revision is now accepted and ready to land.May 12 2015, 9:17 PM

FYI, I finally boot tested this on a machine with a normal MADT (no x2APIC entries) and verified that it still booted ok. I still haven't heard anything from zeising in regards to testing on the HP machine that needs this.

IMO it does not make sense to sit on the patch. On the non-buggy BIOSes, the patch should make no change. Supposedly, the patch fixes the buggy case, which is not working right now anyway. So even if, unlikely, there is some bug preventing the Dells from booting, the machines cannot boot now. But there is high chance that they would boot. Also, x2apic entries parsing is the required step.

This revision was automatically updated to reflect the committed changes.