linux/arch/ia64
Alex Chiang 012b7105cc [IA64] prevent MCA when performing MMIO mmap to PCI config space
Example memory map (HP rx7640 with 'default' acpiconfig setting, VGA disabled):
   0x00000000 - 0x3FFFBFFF  supports only WB (cacheable) access

If a user attempts to perform an MMIO mmap (using the PCIIOC_MMAP_IS_MEM ioctl)
to PCI config space (like mmap'ing and accessing memory at 0xA0000),
we will MCA because the kernel will attempt to use a mapping with the UC
attribute.

So check the memory attribute in kern_mmap and the EFI memmap. If WC is
requested, and WC or UC access is supported for the region, allow it.
Otherwise, use the same attribute the kernel uses.

Updates documentation and test cases as well.

Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2007-07-11 11:34:49 -07:00
..
configs [IA64] refresh config files 2007-03-08 11:20:17 -08:00
dig [PATCH] tty: Remove include of screen_info.h from tty.h 2006-07-10 13:24:16 -07:00
hp [IA64] Fix - Section mismatch: reference to .init.data:mvec_name 2007-05-10 11:57:58 -07:00
ia32 [PATCH] add SIGNAL syscall class (v3) 2007-05-11 05:38:25 -04:00
kernel [IA64] Stop bit for brl instruction 2007-07-09 13:37:44 -07:00
lib [AF_RXRPC/AFS]: Arch-specific fixes. 2007-04-27 15:28:45 -07:00
mm [IA64] is_power_of_2-ia64/mm/hugetlbpage.c 2007-06-26 13:32:59 -07:00
oprofile Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
pci [IA64] prevent MCA when performing MMIO mmap to PCI config space 2007-07-11 11:34:49 -07:00
scripts Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sn [IA64] SN: Correct ROM resource length for BIOS copy 2007-07-09 13:37:18 -07:00
Kconfig [IA64] Quicklist support for IA64 2007-05-11 09:40:00 -07:00
Kconfig.debug [PATCH] Move Kprobes and Oprofile to "Instrumentation Support" menu 2005-11-07 07:53:35 -08:00
Makefile [IA64] add vmlinuz target 2006-06-21 14:31:07 -07:00
defconfig Pull error-inject into release branch 2007-04-30 13:55:43 -07:00
install.sh Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
module.lds Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00