Panic booting vmware i386 after SRAT update
mdf at FreeBSD.org
mdf at FreeBSD.org
Thu Jul 29 16:33:19 UTC 2010
On Thu, Jul 29, 2010 at 7:18 AM, John Baldwin <jhb at freebsd.org> wrote:
> On Wednesday, July 28, 2010 1:37:42 pm mdf at freebsd.org wrote:
>> I have a 2 cpu virtual image of FreeBSD current. It panics during
>> boot after building in the NUMA support.
>>
>> I'll transcribe the SRAT bootverbose messages and panic message as best I can.
>>
>> Table 'SRAT' at 0xfef07f6
>> SRAT: Found table at 0xfef07f6
>> SRAT: Found memory domain 0 addr 0 len a0000: enabled
>> SRAT: Found memory domain 0 addr 100000 len ff00000: enabled
>>
>> then some MADT: messages about finding cpu 0 and 1
>>
>> cpu0 (BSP): APIC ID: 0
>> cpu1 (AP): APIC ID: 1
>> panic: SRAT: CPU with APIC ID 0 is not known
>>
>> I'm playing around now with trying to figure out what went missing,
>> but I thought I'd send this out now.
>
> Hmm, check_domains() in srat.c should reject the SRAT table in this case.
> Oh, I see the problem, try this:
>
> Index: srat.c
> ===================================================================
> --- srat.c (revision 210552)
> +++ srat.c (working copy)
> @@ -150,7 +150,8 @@
> for (i = 0; i < num_mem; i++) {
> found = 0;
> for (j = 0; j <= MAX_APIC_ID; j++)
> - if (cpus[j].domain == mem_info[i].domain) {
> + if (cpus[j].enabled &&
> + cpus[j].domain == mem_info[i].domain) {
> cpus[j].has_memory = 1;
> found++;
> }
This appears to fix the issue for me.
Thanks,
matthew
More information about the freebsd-current
mailing list