linux/arch/x86/include/asm
Joerg Roedel fd89a13792 x86-32: Separate 1:1 pagetables from swapper_pg_dir
This patch fixes machine crashes which occur when heavily exercising the
CPU hotplug codepaths on a 32-bit kernel. These crashes are caused by
AMD Erratum 383 and result in a fatal machine check exception. Here's
the scenario:

1. On 32-bit, the swapper_pg_dir page table is used as the initial page
table for booting a secondary CPU.

2. To make this work, swapper_pg_dir needs a direct mapping of physical
memory in it (the low mappings). By adding those low, large page (2M)
mappings (PAE kernel), we create the necessary conditions for Erratum
383 to occur.

3. Other CPUs which do not participate in the off- and onlining game may
use swapper_pg_dir while the low mappings are present (when leave_mm is
called). For all steps below, the CPU referred to is a CPU that is using
swapper_pg_dir, and not the CPU which is being onlined.

4. The presence of the low mappings in swapper_pg_dir can result
in TLB entries for addresses below __PAGE_OFFSET to be established
speculatively. These TLB entries are marked global and large.

5. When the CPU with such TLB entry switches to another page table, this
TLB entry remains because it is global.

6. The process then generates an access to an address covered by the
above TLB entry but there is a permission mismatch - the TLB entry
covers a large global page not accessible to userspace.

7. Due to this permission mismatch a new 4kb, user TLB entry gets
established. Further, Erratum 383 provides for a small window of time
where both TLB entries are present. This results in an uncorrectable
machine check exception signalling a TLB multimatch which panics the
machine.

There are two ways to fix this issue:

        1. Always do a global TLB flush when a new cr3 is loaded and the
        old page table was swapper_pg_dir. I consider this a hack hard
        to understand and with performance implications

        2. Do not use swapper_pg_dir to boot secondary CPUs like 64-bit
        does.

This patch implements solution 2. It introduces a trampoline_pg_dir
which has the same layout as swapper_pg_dir with low_mappings. This page
table is used as the initial page table of the booting CPU. Later in the
bringup process, it switches to swapper_pg_dir and does a global TLB
flush. This fixes the crashes in our test cases.

-v2: switch to swapper_pg_dir right after entering start_secondary() so
that we are able to access percpu data which might not be mapped in the
trampoline page table.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
LKML-Reference: <20100816123833.GB28147@aftab>
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2010-08-18 09:17:20 -07:00
..
uv x86, UV: Modularize BAU send and wait 2010-06-08 21:13:48 +02:00
visws x86: Move pci init function to x86_init 2010-02-19 16:12:29 -08:00
xen Merge branch 'stable/xen-swiotlb-0.8.6' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen 2010-08-12 09:09:41 -07:00
a.out-core.h hw-breakpoints: Fix broken a.out format dump 2009-11-10 11:23:05 +01:00
a.out.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
acpi.h x86: Fix keeping track of AMD C1E 2010-08-02 08:45:56 -07:00
aes.h crypto: aes - Export x86 AES encrypt/decrypt functions 2009-02-18 16:48:05 +08:00
agp.h agp: kill phys_to_gart() and gart_to_phys() 2009-08-03 09:05:00 +01:00
alternative-asm.h x86-64: Reduce SMP locks table size 2010-04-28 17:15:47 -07:00
alternative.h x86, alternatives: Use 16-bit numbers for cpufeature index 2010-07-07 10:36:28 -07:00
amd_iommu_proto.h x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt 2010-01-22 17:44:35 +01:00
amd_iommu_types.h Merge branch 'iommu/largepages' into amd-iommu/2.6.35 2010-05-11 17:40:57 +02:00
amd_iommu.h x86/amd-iommu: Update copyright headers 2009-11-27 11:45:49 +01:00
apb_timer.h x86, mrst: add more timer config options 2010-05-19 13:45:39 -07:00
apic.h x86, apic: Allow to use certain functions without APIC built-in support 2010-03-18 17:03:21 +01:00
apicdef.h x86: io-apic: IO-APIC MMIO should not fail on resource insertion 2009-11-16 16:37:10 +01:00
apm.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
arch_hweight.h x86, hweight: Use a 32-bit popcnt for __arch_hweight32() 2010-05-17 15:17:16 -07:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
asm.h x86, asm: Make _ASM_EXTABLE() usable from assembly code 2009-08-31 15:14:30 -07:00
atomic64_32.h x86-32: Rewrite 32-bit atomic64 functions in assembly 2010-02-25 20:47:30 -08:00
atomic64_64.h Merge branch 'x86-atomic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-05-18 08:40:05 -07:00
atomic.h Merge branch 'x86-atomic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-05-18 08:40:05 -07:00
auxvec.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
bios_ebda.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
bitops.h x86: Add optimized popcnt variants 2010-04-06 15:52:11 -07:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
boot.h x86: Clean up arch/x86/Kconfig* 2010-04-28 17:25:53 -07:00
bootparam.h x86, olpc: Add support for calling into OpenFirmware 2010-06-18 14:54:36 -07:00
bug.h x86: Convert BUG() to use unreachable() 2009-12-05 09:10:12 -08:00
bugs.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h Rename .data.read_mostly to .data..read_mostly. 2010-03-03 11:26:00 +01:00
cacheflush.h Merge branch 'drm-for-2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2010-05-21 11:14:52 -07:00
calgary.h x86: Calgary: Convert detect_calgary() to use iommu_init hook 2009-11-10 12:31:15 +01:00
calling.h x86: document 64-bit and 32-bit function call convention ABI 2009-02-03 19:48:18 +01:00
checksum_32.h x86: fix csum_ipv6_magic asm memory clobber 2009-10-01 16:11:12 -07:00
checksum_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
checksum.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
cmpxchg_32.h x86, asm: Merge cmpxchg_486_u64() and cmpxchg8b_emu() 2010-07-28 17:05:11 -07:00
cmpxchg_64.h x86, asm: Clean up and simplify <asm/cmpxchg.h> 2010-07-28 15:24:09 -07:00
cmpxchg.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
compat.h improve sys_newuname() for compat architectures 2010-03-12 15:52:32 -08:00
cpu.h x86: generalize boot_cpu_id 2009-01-29 14:17:01 +01:00
cpufeature.h Merge branch 'x86-alternatives-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-06 16:24:17 -07:00
cpumask.h x86: unify cpu_callin_mask/cpu_callout_mask/cpu_initialized_mask/cpu_sibling_setup_mask 2009-03-13 14:49:54 +10:30
cputime.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
current.h x86, percpu: Add 'percpu_read_stable()' interface for cacheable accesses 2009-08-04 01:28:52 +09:00
debugreg.h x86/debug: Clear reserved bits of DR6 in do_debug() 2010-01-29 02:26:10 +01:00
delay.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
desc_defs.h tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
desc.h x86: Make sure get_user_desc() doesn't sign extend. 2009-11-05 13:22:18 -08:00
device.h x86/amd-iommu: Use dev->arch->iommu to store iommu related information 2009-11-27 14:20:32 +01:00
div64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
dma-mapping.h dma-mapping: remove dma_is_consistent API 2010-08-11 08:59:21 -07:00
dma.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
dmi.h x86/dmi: fix dmi_alloc() section mismatches 2009-03-23 17:20:50 +01:00
dwarf2.h x86: Use .cfi_sections for assembly code 2010-05-13 22:15:18 -07:00
e820.h x86, tboot: Add support for S3 memory integrity protection 2010-03-19 13:39:58 -07:00
edac.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
efi.h x86: Make 64-bit efi_ioremap use ioremap on MMIO regions 2009-08-03 13:34:25 -07:00
elf.h x86: ELF_PLAT_INIT() shouldn't worry about TIF_IA32 2010-02-16 08:51:49 -08:00
emergency-restart.h x86: attempt reboot via port CF9 if we have standard PCI ports 2008-11-11 16:19:48 -08:00
entry_arch.h x86: UV RTC: Rename generic_interrupt to x86_platform_ipi 2009-10-14 18:27:11 +02:00
errno.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
fb.h x86-64: Allow fbdev primary video code 2010-02-16 21:22:26 -08:00
fcntl.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
fixmap.h x86: Fix placement of FIX_OHCI1394_BASE 2010-03-16 11:16:27 +01:00
floppy.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
frame.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
ftrace.h tracing: Remove FTRACE_SYSCALL_MAX definitions 2009-08-26 21:30:39 +02:00
futex.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
gart.h x86: GART: Convert gart_iommu_hole_init() to use iommu_init hook 2009-11-10 12:31:23 +01:00
genapic.h x86, apic: merge genapic.h into apic.h 2009-02-17 17:52:43 +01:00
geode.h cs5535: drop the Geode-specific MFGPT/GPIO code 2009-12-15 08:53:28 -08:00
gpio.h x86: canonicalize remaining header guards 2008-10-23 00:20:33 -07:00
hardirq.h x86, asm: Introduce and use percpu_inc() 2010-04-28 16:58:49 -07:00
highmem.h kmap_atomic: make kunmap_atomic() harder to misuse 2010-08-09 20:44:54 -07:00
hpet.h x86, hpet: Restrict read back to affected ATI chipsets 2010-04-28 18:14:29 -07:00
hugetlb.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
hw_breakpoint.h x86: Support for instruction breakpoints 2010-06-24 23:35:27 +02:00
hw_irq.h x86: Handle legacy PIC interrupts on all the cpu's 2010-03-16 06:36:35 +01:00
hypertransport.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
hyperv.h x86: Clean up the hypervisor layer 2010-05-07 17:13:04 -07:00
hypervisor.h x86: early PV on HVM features initialization. 2010-07-22 16:45:35 -07:00
i387.h Merge branch 'x86-xsave-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-06 16:25:13 -07:00
i8253.h i8253: Convert i8253_lock to raw_spinlock 2010-03-02 10:28:38 +01:00
i8259.h Merge remote branch 'origin/x86/apic' into x86/mrst 2010-02-22 16:25:18 -08:00
ia32_unistd.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
ia32.h generic compat_sys_ustat 2009-03-27 14:43:57 -04:00
idle.h x86: kill #ifdef for exit_idle() 2008-12-12 11:58:36 +01:00
inat_types.h x86: Instruction decoder API 2009-08-27 00:35:56 +02:00
inat.h x86: AVX instruction set decoder support 2009-10-29 08:47:46 +01:00
init.h x86: move function and variable declarations to asm/init.h 2009-03-05 14:17:18 +01:00
insn.h x86: Move MAX_INSN_SIZE into asm/insn.h 2010-03-10 13:23:34 +01:00
inst.h crypto: aesni-intel - Fix another CTR build failure with gas 2.16.1 2010-03-24 21:37:57 +08:00
intel_scu_ipc.h Remove indirect read write api support. 2010-08-03 09:50:30 -04:00
io_apic.h x86, irq: Rename gsi_end gsi_top, and fix off by one errors 2010-06-09 13:34:06 -07:00
io.h x86: Fix 'reservetop=' functionality 2010-04-30 12:19:53 +02:00
ioctl.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
ioctls.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
iomap.h x86, pat: Add PAT reserve free to io_mapping* APIs 2009-08-26 15:41:16 -07:00
iommu.h x86: Move iommu_shutdown_noop to x86_init.c 2009-11-15 09:03:10 +01:00
ipcbuf.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
ipi.h x86, apic: remove duplicate asm/apic.h inclusions 2009-02-17 17:52:44 +01:00
irq_regs.h x86: merge irq_regs.h 2009-01-21 17:26:06 +09:00
irq_remapping.h x86: x2apic, IR: Clean up X86_X2APIC and INTR_REMAP config checks 2009-04-21 09:08:25 +02:00
irq_vectors.h x86/xen: event channels delivery on HVM. 2010-07-22 16:45:59 -07:00
irq.h x86, legacy_irq: Remove left over nr_legacy_irqs 2010-02-24 11:01:34 -08:00
irqflags.h x86: allow "=rm" in native_save_fl() 2009-08-25 16:47:16 -07:00
ist.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
k8.h x86, k8: Fix build error when K8_NB is disabled 2010-05-14 11:53:01 -07:00
Kbuild archs: replace unifdef-y with header-y 2010-08-14 22:26:51 +02:00
kdebug.h x86, UV: Make kdump avoid stack dumps - fix !CONFIG_KEXEC breakage 2010-08-12 12:23:55 -07:00
kexec.h x86, kexec: x86_64: add kexec jump support for x86_64 2009-03-10 18:13:25 -07:00
kgdb.h kgdb,x86: Individual register get/set for x86 2010-08-05 09:22:20 -05:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kmemcheck.h kmemcheck: add the kmemcheck core 2009-06-13 15:37:30 +02:00
kprobes.h x86: Move MAX_INSN_SIZE into asm/insn.h 2010-03-10 13:23:34 +01:00
kvm_emulate.h KVM: x86 emulator: do not inject exception directly into vcpu 2010-08-01 10:35:37 +03:00
kvm_host.h KVM: VMX: fix tlb flush with invalid root 2010-08-02 06:40:16 +03:00
kvm_para.h x86, paravirt: don't compute pvclock adjustments if we trust the tsc 2010-05-19 11:41:05 +03:00
kvm.h KVM: x86: XSAVE/XRSTOR live migration support 2010-08-01 10:46:37 +03:00
ldt.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
lguest_hcall.h lguest: stop using KVM hypercall mechanism 2010-04-14 21:43:56 +09:30
lguest.h Merge commit 'origin/x86/urgent' into x86/asm 2009-08-25 15:40:29 -07:00
linkage.h x86: shrink __ALIGN and __ALIGN_STR definitions 2009-03-11 12:39:28 +01:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h local_t: Remove cpu_local_xx macros 2010-01-05 15:34:49 +09:00
mach_timer.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
mach_traps.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
math_emu.h x86: fix math_emu register frame access 2009-02-10 00:39:14 +01:00
mc146818rtc.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mca_dma.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mca.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mce.h x86, mce: Fix MSR_IA32_MCI_CTL2 CMCI threshold setup 2010-06-10 21:27:36 -07:00
microcode.h Revert "x86: ucode-amd: Load ucode-patches once ..." 2010-01-23 06:21:59 +01:00
mman.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
mmconfig.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mmu_context.h cpumask: use mm_cpumask() wrapper: x86 2009-09-24 09:34:52 +09:30
mmu.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mmx.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mmzone_32.h tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
mmzone_64.h x86, numa: Add fixed node size option for numa emulation 2010-02-15 14:34:10 -08:00
mmzone.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
module.h Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-09-14 07:57:32 -07:00
mpspec_def.h x86: rename all fields of mpf_intel mpf_X to X 2009-01-08 15:37:37 +01:00
mpspec.h x86, ioapic: Simplify probe_nr_irqs_gsi. 2010-05-04 13:35:11 -07:00
mrst.h x86, mrst: make mrst_timer_options an enum 2010-05-19 14:37:40 -07:00
msgbuf.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
mshyperv.h x86: Clean up the hypervisor layer 2010-05-07 17:13:04 -07:00
msidef.h x86, x2apic: enable fault handling for intr-remapping 2009-03-17 15:38:59 -07:00
msr-index.h Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-06 16:24:51 -07:00
msr.h x86, gcc-4.6: Avoid unused by set variables in rdmsr 2010-07-20 15:38:18 -07:00
mtrr.h x86, mtrr: make mtrr_aps_delayed_init static bool 2009-08-21 17:00:02 -07:00
mutex_32.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mutex_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
mutex.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
nmi.h lockup_detector: Combine nmi_watchdog and softlockup detector 2010-05-12 23:55:33 +02:00
nops.h x86/tracing: comment need for atomic nop 2009-09-10 17:22:44 -04:00
numa_32.h x86: set_highmem_pages_init() cleanup 2009-03-03 13:13:15 +01:00
numa_64.h x86, numa: Add fixed node size option for numa emulation 2010-02-15 14:34:10 -08:00
numa.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
numaq.h Merge branch 'x86-mrst-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-03-07 15:59:39 -08:00
olpc_ofw.h x86, olpc: Constify an olpc_ofw() arg 2010-07-30 18:02:21 -07:00
olpc.h x86, olpc: Use pci subarch init for OLPC 2010-02-25 19:26:23 -08:00
page_32_types.h x86: page_types.h unification of declarations 2009-04-14 11:44:45 +02:00
page_32.h x86 headers: protect page_32.h via __ASSEMBLY__ 2009-02-13 13:36:47 +01:00
page_64_types.h x86, 64-bit: Clean up user address masking 2009-06-20 15:40:00 -07:00
page_64.h x86: create _types.h counterparts for page*.h 2009-02-11 14:54:09 -08:00
page_types.h x86: Use the generic page_is_ram() 2010-02-01 16:58:17 -08:00
page.h x86: Document __phys_reloc_hide() usage in __pa_symbol() 2010-08-11 08:43:49 +02:00
param.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
paravirt_types.h x86, paravirt: Remove kmap_atomic_pte paravirt op. 2010-02-27 14:41:35 -08:00
paravirt.h x86, paravirt: Remove kmap_atomic_pte paravirt op. 2010-02-27 14:41:35 -08:00
parport.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
pat.h x86, platform: Change is_untracked_pat_range() to bool; cleanup init 2009-11-23 17:09:59 -08:00
pci_64.h x86: Only call dma32_reserve_bootmem 64bit !CONFIG_NUMA 2010-02-10 17:47:18 -08:00
pci_x86.h x86/PCI: Add option to not assign BAR's if not already assigned 2010-07-30 09:29:12 -07:00
pci-direct.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
pci-functions.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
pci.h pci-dma: add linux/pci-dma.h to linux/pci.h 2010-03-12 15:52:42 -08:00
percpu.h percpu, x86: Avoid warnings of unused variables in per cpu 2010-06-11 00:03:45 +02:00
perf_event_p4.h perf, x86: P4 PMU -- redesign cache events 2010-07-05 08:34:36 +02:00
perf_event.h Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core 2010-06-09 18:55:57 +02:00
pgalloc.h x86, mm: Allow highmem user page tables to be disabled at boot time 2010-02-25 10:28:19 +01:00
pgtable_32_types.h x86: use __ASSEMBLY__ rather than __ASSEMBLER__ 2010-06-07 17:27:11 -07:00
pgtable_32.h x86-32: Separate 1:1 pagetables from swapper_pg_dir 2010-08-18 09:17:20 -07:00
pgtable_64_types.h x86: 46 bit physical address support on 64 bits 2009-05-05 19:10:18 -07:00
pgtable_64.h gcc-4.6: mm: fix unused but set warnings 2010-08-09 20:44:58 -07:00
pgtable_types.h Merge branch 'bugfix' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen into x86/urgent 2009-09-23 14:35:10 +02:00
pgtable-2level_types.h x86: move more pagetable-related definitions into pgtable*.h 2009-02-13 11:35:01 -08:00
pgtable-2level.h x86: with the last user gone, remove set_pte_present 2009-03-19 14:04:19 +01:00
pgtable-3level_types.h x86: move more pagetable-related definitions into pgtable*.h 2009-02-13 11:35:01 -08:00
pgtable-3level.h x86: with the last user gone, remove set_pte_present 2009-03-19 14:04:19 +01:00
pgtable.h x86, mm: is_untracked_pat_range() takes a normal semiclosed range 2009-11-23 17:09:59 -08:00
poll.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
posix_types_32.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
posix_types_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
posix_types.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
prctl.h headers_check fix: x86, prctl.h 2009-02-02 23:27:09 +05:30
processor-cyrix.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
processor-flags.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
processor.h x86: Fix keeping track of AMD C1E 2010-08-02 08:45:56 -07:00
proto.h Move round_up/down to kernel.h 2010-02-12 09:42:39 -08:00
ptrace-abi.h x86, perf, bts, mm: Delete the never used BTS-ptrace code 2010-03-26 11:33:55 +01:00
ptrace.h x86, perf, bts, mm: Delete the never used BTS-ptrace code 2010-03-26 11:33:55 +01:00
pvclock-abi.h x86, paravirt: don't compute pvclock adjustments if we trust the tsc 2010-05-19 11:41:05 +03:00
pvclock.h x86, paravirt: Enable pvclock flags in vcpu_time_info structure 2010-05-19 11:40:59 +03:00
reboot_fixups.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
reboot.h x86 kdump: make nmi_shootdown_cpus() non-static 2008-11-12 18:55:46 +01:00
required-features.h x86, cpu: Support the features flags in new CPUID leaf 7 2010-07-07 17:29:18 -07:00
resource.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
resume-trace.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
rio.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
rtc.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
rwlock.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
rwsem.h x86, rwsem: Minor cleanups 2010-07-20 17:41:14 -07:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
seccomp_32.h x86-64: seccomp: fix 32/64 syscall hole 2009-03-02 15:41:30 -08:00
seccomp_64.h x86-64: seccomp: fix 32/64 syscall hole 2009-03-02 15:41:30 -08:00
seccomp.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
sections.h x86-64: align RODATA kernel section to 2MB with CONFIG_DEBUG_RODATA 2009-10-20 14:46:00 +09:00
segment.h x86: implement x86_32 stack protector 2009-02-10 00:42:01 +01:00
sembuf.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
serial.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
setup_arch.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
setup.h support multiple .discard.* sections to avoid section type conflicts 2010-07-27 22:45:19 -07:00
shmbuf.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
shmparam.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
sigcontext32.h headers_check fix: x86, sigcontext32.h 2009-01-31 00:18:58 +05:30
sigcontext.h tree-wide: fix misspelling of "definition" in comments 2009-12-04 23:41:47 +01:00
sigframe.h x86: sigframe.h: include headers for dependency 2008-12-18 15:01:22 -08:00
siginfo.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
signal.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
smp.h x86, lib: Add wbinvd smp helpers 2010-01-22 16:05:42 -08:00
smpboot_hooks.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
socket.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
sockios.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
sparsemem.h x86: 46 bit physical address support on 64 bits 2009-05-05 19:10:18 -07:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h locking: Convert raw_rwlock functions to arch_rwlock 2009-12-14 23:55:32 +01:00
srat.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
stackprotector.h x86/i386: Make sure stack-protector segment base is cache aligned 2009-09-03 21:30:51 +02:00
stacktrace.h perf: Drop the skip argument from perf_arch_fetch_regs_caller 2010-06-08 23:31:27 +02:00
stat.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
statfs.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
string_32.h x86: Use __builtin_memset and __builtin_memcpy for memset/memcpy 2009-09-28 16:43:15 -07:00
string_64.h x86: add hooks for kmemcheck 2009-06-15 12:40:02 +02:00
string.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
suspend_32.h PM / x86: Save/restore MISC_ENABLE register 2010-06-08 00:32:49 +02:00
suspend_64.h PM / x86: Save/restore MISC_ENABLE register 2010-06-08 00:32:49 +02:00
suspend.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
svm.h KVM: x86: Push potential exception error code on task switches 2010-05-17 12:17:46 +03:00
swab.h headers_check fix: x86, swab.h 2009-01-31 00:19:32 +05:30
swiotlb.h x86: Split swiotlb initialization into two stages 2009-12-15 13:01:57 +01:00
sync_bitops.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
sys_ia32.h Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
syscall.h tracing: Unify arch_syscall_addr() implementations 2010-02-17 13:07:21 +01:00
syscalls.h Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
system_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
system.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2010-08-04 11:47:58 -07:00
tce.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
termbits.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
termios.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
thread_info.h Merge branch 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6 2010-05-28 16:14:17 -07:00
time.h x86: Move get/set_wallclock to x86_platform_ops 2009-09-16 14:34:50 +02:00
timer.h x86: Move tsc_calibration to x86_init_ops 2009-08-31 09:35:47 +02:00
timex.h time: move PIT_TICK_RATE to linux/timex.h 2009-06-16 19:47:27 -07:00
tlb.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
tlbflush.h x86: make zap_low_mapping could be used early 2009-06-12 13:50:24 +03:00
topology.h numa: x86_64: use generic percpu var numa_node_id() implementation 2010-05-27 09:12:57 -07:00
trampoline.h x86-32: Separate 1:1 pagetables from swapper_pg_dir 2010-08-18 09:17:20 -07:00
traps.h x86: Merge simd_math_error() into math_error() 2010-05-03 13:39:29 -07:00
tsc.h x86: Move tsc_calibration to x86_init_ops 2009-08-31 09:35:47 +02:00
types.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
uaccess_32.h x86: copy_from_user() should not return -EFAULT 2010-01-05 13:45:06 -08:00
uaccess_64.h Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-02-28 10:35:09 -08:00
uaccess.h x86, 64-bit: Move K8 B step iret fixup to fault entry asm 2009-10-12 18:29:46 +02:00
ucontext.h x86: remove all now-duplicate header files 2009-06-18 14:40:03 -07:00
unaligned.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
unistd_32.h Merge branch 'writable_limits' of git://decibel.fi.muni.cz/~xslaby/linux 2010-08-10 12:07:51 -07:00
unistd_64.h Merge branch 'writable_limits' of git://decibel.fi.muni.cz/~xslaby/linux 2010-08-10 12:07:51 -07:00
unistd.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
user32.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
user_32.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
user_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
user.h x86, ptrace: regset extensions to support xstate 2010-02-11 15:08:17 -08:00
vdso.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
vga.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
vgtod.h time: Introduce CLOCK_REALTIME_COARSE 2009-08-21 21:43:46 +02:00
virtext.h KVM: SVM: Move EFER and MSR constants to generic x86 code 2009-03-24 11:02:46 +02:00
vm86.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
vmi_time.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
vmi.h x86 Fix VMI crash on boot in 2.6.28-rc8 2008-12-14 16:24:38 -08:00
vmx.h KVM: VMX: Enable XSAVE/XRSTOR for guest 2010-08-01 10:46:31 +03:00
vsyscall.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
x86_init.h x86: Add i8042 pre-detection hook to x86_platform_ops 2010-07-07 17:05:06 -07:00
xcr.h x86, um: ... and asm-x86 move 2008-10-22 22:55:20 -07:00
xor_32.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
xor_64.h x86: Fix ASM_X86__ header guards 2008-10-22 22:55:23 -07:00
xor.h x86: add hooks for kmemcheck 2009-06-15 12:40:02 +02:00
xsave.h Merge branch 'x86-xsave-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-06 16:25:13 -07:00