freebsd-src/sys/i386
John Baldwin 7157eae462 For no good reason I had assumed that ACPI table headers would be page
aligned (or at least not cross a page boundary).  However, it turns out
that on at least one machine one table header does cross a page boundary.
This caused problems with the MADT early probe as it uses the crash dump
map to load ACPI tables by loading the RSDT/XSDT into pages 1 ... N and
loading the header of each ACPI table header into page 0 looking for the
MADT.  However, if a table header crossed a page boundary, then page 1
would get trashed resulting in a panic.  Fix this by reserving the first
2 pages for ACPI table headers (headers are less than a page in size,
so 2 pages will be sufficient) and use pages 2 .. N for the RSDT and XSDT.

Note: amd64 should probably be simplified to just use pmap_mapbios()
for all these tables which will use the direct map and not need the
crash dump hack.

MFC after:	5 days
Tested on:	i386
Reported by:	Pete French  petefrench of ticketswitch.com
2008-01-31 16:51:43 +00:00
..
acpica For no good reason I had assumed that ACPI table headers would be page 2008-01-31 16:51:43 +00:00
bios Hold Giant over the entire execution of the suspend path instead of 2007-12-06 01:39:23 +00:00
compile
conf Add COMPAT_FREEBSD7 and enable it in configs that have COMPAT_FREEBSD6. 2008-01-07 21:40:11 +00:00
cpufreq Use bus_dma to get a page in the first 4 GB. Since the physical address 2007-06-17 07:18:23 +00:00
i386 Add a wrapper function that bound checks writes to the dump device. 2008-01-28 19:04:07 +00:00
ibcs2 VOP_LOCK1() (and so VOP_LOCK()) and VOP_UNLOCK() are only used in 2008-01-13 14:44:15 +00:00
include Move GET_STACK_USAGE from MI header to i386/amd64 MD ones. 2008-01-31 08:24:27 +00:00
isa Use cpu_spinwait() (i.e., "pause") when spinning on rdtsc during DELAY(). 2008-01-17 18:59:38 +00:00
linux VOP_LOCK1() (and so VOP_LOCK()) and VOP_UNLOCK() are only used in 2008-01-13 14:44:15 +00:00
pci More properly handle links who only have 1 valid IRQ in their bitmask. The 2007-12-21 16:53:27 +00:00
svr4 Use svr4_si_{addr,code,errno,signo,trap} in preference to si_{...}. 2005-10-19 14:59:54 +00:00
xbox Replace explicit calls to video methods with their respective variants 2007-12-29 23:26:59 +00:00
Makefile Update entries for building tags. 2007-05-13 18:21:54 +00:00