freebsd-dev/sys/x86
John Baldwin 8b9e9831bf Attempt to make machine check handling a bit more robust:
- Don't malloc() new MCA records for machine checks logged due to a
  CMCI or MC# exception.  Instead, use a pre-allocated pool of records.
  When a CMCI or MC# exception fires, schedule a swi to refill the pool.
  The pool is sized to hold at least one record per available machine
  bank, and one record per CPU. This should handle the case of all CPUs
  triggering a single bank at once as well as the case a single CPU
  triggering all of its banks.  The periodic scans still use malloc()
  since they are run from a safe context.
- Since we have to create an swi to handle refills, make the periodic scan
  a second swi for the same thread instead of having a separate taskqueue
  thread for the scans.

Suggested by:	mdf (avoiding malloc())
MFC after:	2 weeks
2012-03-30 20:17:39 +00:00
..
acpica Allocate the ioapics[] array dynamically since it is only needed for the 2012-03-28 18:53:48 +00:00
bios Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
cpufreq Fix apparent logic reversal in setting the 'auto_mode' flag. 2012-02-26 21:24:27 +00:00
include Move the legacy(4) driver to x86. 2012-03-30 19:10:14 +00:00
isa Restore proper use of bounce buffers for ISA DMA. When locking was 2012-03-29 18:58:02 +00:00
pci Move the legacy(4) driver to x86. 2012-03-30 19:10:14 +00:00
x86 Attempt to make machine check handling a bit more robust: 2012-03-30 20:17:39 +00:00