> So it appears to be dying here: > > (gdb) l *madt_probe+0x119 > 0xc06e7c69 is in madt_probe (/usr/src/sys/i386/acpica/madt.c:241). > 236 if (xsdt == NULL) { > 237 if (bootverbose) > 238 printf("MADT: Failed to map XSDT\n"); > 239 return (ENXIO); > 240 } > 241 count = (xsdt->Length - sizeof(ACPI_TABLE_HEADER)) / > 242 sizeof(UINT64); > 243 for (i = 0; i < count; i++) > 244 if > (madt_probe_table(xsdt->TableOffsetEntry[i])) > 245 break; > > where it reads 'xsdt->Length'. xsdt was just mapped into a temporary part of > KVA (used for kernel dumps) a few lines earlier:
O.K., that is interesting, because my source code doesnt look like thiat, mine uses 'xsdt->Header.Length' instead of 'xsdt->Length' - is that code above from 7.0 ? > You can try adding some printfs to see what the values of > 'rsdp->XsdtPhysicalAddress' and > 'xsdt' after the call to madt_map_table() are. Actually, try this perhaps: Thanks for the patch - it didn;t help matters unfortunately, but I am adding some printfs on xsdt itself and also rsdp->XsdtPhysicalAddress to see what we get. Will build a new kernel and let you know. cheers, -pete. _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"