linux/arch/x86/include/asm
Linus Torvalds 643ad15d47 Merge branch 'mm-pkeys-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 protection key support from Ingo Molnar:
 "This tree adds support for a new memory protection hardware feature
  that is available in upcoming Intel CPUs: 'protection keys' (pkeys).

  There's a background article at LWN.net:

      https://lwn.net/Articles/643797/

  The gist is that protection keys allow the encoding of
  user-controllable permission masks in the pte.  So instead of having a
  fixed protection mask in the pte (which needs a system call to change
  and works on a per page basis), the user can map a (handful of)
  protection mask variants and can change the masks runtime relatively
  cheaply, without having to change every single page in the affected
  virtual memory range.

  This allows the dynamic switching of the protection bits of large
  amounts of virtual memory, via user-space instructions.  It also
  allows more precise control of MMU permission bits: for example the
  executable bit is separate from the read bit (see more about that
  below).

  This tree adds the MM infrastructure and low level x86 glue needed for
  that, plus it adds a high level API to make use of protection keys -
  if a user-space application calls:

        mmap(..., PROT_EXEC);

  or

        mprotect(ptr, sz, PROT_EXEC);

  (note PROT_EXEC-only, without PROT_READ/WRITE), the kernel will notice
  this special case, and will set a special protection key on this
  memory range.  It also sets the appropriate bits in the Protection
  Keys User Rights (PKRU) register so that the memory becomes unreadable
  and unwritable.

  So using protection keys the kernel is able to implement 'true'
  PROT_EXEC on x86 CPUs: without protection keys PROT_EXEC implies
  PROT_READ as well.  Unreadable executable mappings have security
  advantages: they cannot be read via information leaks to figure out
  ASLR details, nor can they be scanned for ROP gadgets - and they
  cannot be used by exploits for data purposes either.

  We know about no user-space code that relies on pure PROT_EXEC
  mappings today, but binary loaders could start making use of this new
  feature to map binaries and libraries in a more secure fashion.

  There is other pending pkeys work that offers more high level system
  call APIs to manage protection keys - but those are not part of this
  pull request.

  Right now there's a Kconfig that controls this feature
  (CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS) that is default enabled
  (like most x86 CPU feature enablement code that has no runtime
  overhead), but it's not user-configurable at the moment.  If there's
  any serious problem with this then we can make it configurable and/or
  flip the default"

* 'mm-pkeys-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (38 commits)
  x86/mm/pkeys: Fix mismerge of protection keys CPUID bits
  mm/pkeys: Fix siginfo ABI breakage caused by new u64 field
  x86/mm/pkeys: Fix access_error() denial of writes to write-only VMA
  mm/core, x86/mm/pkeys: Add execute-only protection keys support
  x86/mm/pkeys: Create an x86 arch_calc_vm_prot_bits() for VMA flags
  x86/mm/pkeys: Allow kernel to modify user pkey rights register
  x86/fpu: Allow setting of XSAVE state
  x86/mm: Factor out LDT init from context init
  mm/core, x86/mm/pkeys: Add arch_validate_pkey()
  mm/core, arch, powerpc: Pass a protection key in to calc_vm_flag_bits()
  x86/mm/pkeys: Actually enable Memory Protection Keys in the CPU
  x86/mm/pkeys: Add Kconfig prompt to existing config option
  x86/mm/pkeys: Dump pkey from VMA in /proc/pid/smaps
  x86/mm/pkeys: Dump PKRU with other kernel registers
  mm/core, x86/mm/pkeys: Differentiate instruction fetches
  x86/mm/pkeys: Optimize fault handling in access_error()
  mm/core: Do not enforce PKEY permissions on remote mm access
  um, pkeys: Add UML arch_*_access_permitted() methods
  mm/gup, x86/mm/pkeys: Check VMAs and PTEs for protection keys
  x86/mm/gup: Simplify get_user_pages() PTE bit handling
  ...
2016-03-20 19:08:56 -07:00
..
crypto x86/fpu: Rename i387.h to fpu/api.h 2015-05-19 15:47:30 +02:00
fpu Merge branch 'mm-pkeys-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-20 19:08:56 -07:00
numachip x86/numachip: Introduce Numachip2 timer mechanisms 2015-09-22 22:25:33 +02:00
trace x86/fpu/mpx: Rework MPX 'xstate' types 2015-09-14 12:22:00 +02:00
uv x86/platform/uv: Insert per_cpu accessor function on uv_hub_nmi 2015-09-13 09:27:53 +02:00
xen Merge branch 'x86/debug' into core/objtool, to pick up frame pointer fixes 2016-02-25 09:00:38 +01:00
Kbuild mm: clean up per architecture MM hook header files 2015-07-17 16:39:53 -07:00
a.out-core.h
acenv.h ACPICA: Linux: Add support to exclude <asm/acenv.h> inclusion. 2014-07-23 01:10:44 +02:00
acpi.h acpi, x86: Implement arch_apei_get_mem_attributes() 2015-08-08 10:37:39 +02:00
agp.h
alternative-asm.h x86/alternatives: Document macros 2015-05-06 11:25:31 +02:00
alternative.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
amd_nb.h x86/mce/AMD: Document some functionality 2016-03-08 11:48:15 +01:00
apb_timer.h
apic.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
apic_flat_64.h x86: Make flat_init_apic_ldr() available 2011-12-05 17:17:07 +01:00
apicdef.h x86/apic: Fix typo EIO_ACK -> EOI_ACK and document it 2012-05-18 09:46:07 +02:00
apm.h
arch_hweight.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
archrandom.h random: Add arch_has_random[_seed]() 2014-03-19 22:24:08 -04:00
asm-offsets.h
asm.h x86/mm: Expand the exception table logic to allow new handling options 2016-02-18 09:21:46 +01:00
atomic.h x86/headers: Don't include asm/processor.h in asm/atomic.h 2015-12-06 12:56:03 +01:00
atomic64_32.h x86/headers: Don't include asm/processor.h in asm/atomic.h 2015-12-06 12:56:03 +01:00
atomic64_64.h atomic, arch: Audit atomic_{read,set}() 2015-09-23 09:54:28 +02:00
barrier.h locking/x86: Tweak the comment about use of wmb() for IO 2016-01-29 09:40:10 +01:00
bios_ebda.h
bitops.h x86/asm/bitops: Force inlining of test_and_set_bit and friends 2016-02-09 10:31:54 +01:00
boot.h x86/boot: Double BOOT_HEAP_SIZE to 64KB 2016-01-11 12:30:50 +01:00
bootparam_utils.h x86: Don't clear olpc_ofw_header when sentinel is detected 2013-08-09 15:29:48 -07:00
bug.h x86: always define BUG() and HAVE_ARCH_BUG, even with !CONFIG_BUG 2014-04-07 16:36:10 -07:00
bugs.h
cache.h
cacheflush.h x86/mm: Always enable CONFIG_DEBUG_RODATA and remove the Kconfig option 2016-02-22 08:51:38 +01:00
calgary.h x86/platform/calgary: Constify cal_chipset_ops structures 2015-11-29 08:50:58 +01:00
ce4100.h
checksum.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
checksum_32.h ipv6: Pass proto to csum_ipv6_magic as __u8 instead of unsigned short 2016-03-13 23:55:13 -04:00
checksum_64.h ipv6: Pass proto to csum_ipv6_magic as __u8 instead of unsigned short 2016-03-13 23:55:13 -04:00
clocksource.h x86/vdso: Disallow vvar access to vclock IO for never-used vclocks 2016-01-12 11:59:35 +01:00
cmdline.h x86, boot: Carve out early cmdline parsing function 2014-05-20 20:21:24 -07:00
cmpxchg.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
cmpxchg_32.h x86/cpufeature: Remove unused and seldomly used cpu_has_xx macros 2015-12-19 11:49:55 +01:00
cmpxchg_64.h x86/cpufeature: Remove unused and seldomly used cpu_has_xx macros 2015-12-19 11:49:55 +01:00
compat.h x86/asm/entry/64: Save user RSP in pt_regs->sp on SYSCALL64 fastpath 2015-03-10 13:56:10 +01:00
cpu.h x86/cpu: Unify CPU family, model, stepping calculation 2015-11-24 09:15:54 +01:00
cpu_device_id.h Add driver auto probing for x86 features v4 2012-01-26 16:44:41 -08:00
cpufeature.h x86/mm/pkeys: Fix mismerge of protection keys CPUID bits 2016-03-11 09:55:57 +01:00
cpufeatures.h Merge branch 'mm-pkeys-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-20 19:08:56 -07:00
cpumask.h
crash.h kexec: support for kexec on panic using new system call 2014-08-08 15:57:33 -07:00
current.h x86: replace percpu_xxx funcs with this_cpu_xxx 2012-05-14 14:15:31 -07:00
debugreg.h perf/x86/amd: AMD support for bp_len > HW_BREAKPOINT_LEN_8 2014-12-03 15:14:26 +01:00
delay.h x86/asm/delay: Introduce an MWAITX-based delay with a configurable timer 2015-08-22 14:52:16 +02:00
desc.h x86/ldt: Make modify_ldt synchronous 2015-07-31 10:23:23 +02:00
desc_defs.h x86/signal/64: Fix SS if needed when delivering a 64-bit signal 2016-02-17 08:32:11 +01:00
device.h x86/PCI: Allow DMA ops specific to a PCI domain 2016-01-15 13:54:55 -06:00
disabled-features.h x86/cpufeature, x86/mm/pkeys: Add protection keys related CPUID definitions 2016-02-16 10:11:13 +01:00
div64.h x86/div64: Add a micro-optimization shortcut if base is power of two 2011-12-05 18:16:11 +01:00
dma-mapping.h dma-mapping: always provide the dma_map_ops based implementation 2016-01-20 17:09:18 -08:00
dma.h x86/mm: Fix zone ranges boot printout 2014-12-11 11:35:02 +01:00
dmi.h x86/dmi: Switch dmi_remap() from ioremap() [uncached] to ioremap_cache() 2016-02-09 14:36:43 +01:00
dwarf2.h x86/asm: Remove the xyz_cfi macros from dwarf2.h 2015-10-14 16:56:28 +02:00
e820.h mm: move memtest under mm 2015-04-14 16:49:06 -07:00
edac.h EDAC: Cleanup atomic_scrub mess 2015-05-28 15:31:53 +02:00
efi.h Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-20 18:58:18 -07:00
elf.h x86/cpufeature: Use enum cpuid_leafs instead of magic numbers 2016-02-01 10:46:48 +01:00
emergency-restart.h reboot: move arch/x86 reboot= handling to generic kernel 2013-07-09 10:33:29 -07:00
entry_arch.h Merge branch 'x86/ras' into x86/core, to fix conflicts 2015-06-07 15:35:27 +02:00
espfix.h x86/espfix: Add 'cpu' parameter to init_espfix_ap() 2015-07-06 15:00:33 +02:00
exec.h Disintegrate asm/system.h for X86 2012-03-28 18:11:12 +01:00
fb.h x86: Use new cache mode type in include/asm/fb.h 2014-11-16 11:04:24 +01:00
fixmap.h x86/mm: Make kmap_prot into a #define 2016-01-20 11:39:14 +01:00
floppy.h x86: Remove deprecated IRQF_DISABLED 2014-03-04 21:47:51 +01:00
frame.h x86/asm: Add C versions of frame pointer macros 2016-01-19 12:59:07 +01:00
ftrace.h ftrace: Format MCOUNT_ADDR address as type unsigned long 2015-07-20 22:30:53 -04:00
futex.h x86: replace futex_atomic_cmpxchg_inatomic() with user_atomic_cmpxchg_inatomic 2013-12-16 09:08:13 -08:00
gart.h
genapic.h
geode.h
hardirq.h Merge branch 'x86/ras' into x86/core, to fix conflicts 2015-06-07 15:35:27 +02:00
highmem.h kmap_atomic_to_page() has no users, remove it 2015-11-09 15:11:24 -08:00
hpet.h timers/x86/hpet: Type adjustments 2015-10-21 11:17:32 +02:00
hugetlb.h mm/hugetlb: remove arch_prepare/release_hugepage from arch headers 2015-06-25 17:00:35 -07:00
hw_breakpoint.h perf/x86/amd: AMD support for bp_len > HW_BREAKPOINT_LEN_8 2014-12-03 15:14:26 +01:00
hw_irq.h x86/PCI: Add driver for Intel Volume Management Device (VMD) 2016-01-15 13:54:55 -06:00
hypertransport.h
hypervisor.h hypervisor/x86/xen: Unset X86_BUG_SYSRET_SS_ATTRS on Xen PV guests 2015-05-05 18:27:43 +01:00
i8259.h x86/irq: Probe for PIC presence before allocating descs for legacy IRQs 2015-11-07 10:37:37 +01:00
ia32.h x86/headers: Remove <asm/sigcontext.h> references on the kernel side 2015-09-08 10:06:05 +02:00
ia32_unistd.h x86: Generate system call tables and unistd_*.h from tables 2011-11-17 13:35:37 -08:00
idle.h x86: Merge the x86_32 and x86_64 cpu_idle() functions 2012-03-26 03:16:07 +02:00
imr.h x86/platform/intel/quark: Drop IMR lock bit support 2016-02-23 07:37:23 +01:00
inat.h x86: Fix to decode grouped AVX with VEX pp bits 2012-02-11 15:11:35 +01:00
inat_types.h
init.h x86, 64bit, mm: Add generic kernel/ident mapping helper 2013-01-29 15:12:25 -08:00
insn.h x86/asm/decoder: Fix and enforce max instruction size in the insn decoder 2015-02-19 00:01:24 +01:00
inst.h x86, crc32-pclmul: Fix build with older binutils 2013-05-30 16:36:23 -07:00
intel-mid.h x86, intel-mid: remove Intel MID specific serial support 2015-03-07 03:25:18 +01:00
intel_mid_vrtc.h intel_mid: Renamed *mrst* to *intel_mid* 2013-10-17 16:40:36 -07:00
intel_pmc_ipc.h intel_pmc_ipc: Update kerneldoc formatting 2015-07-09 11:23:15 -07:00
intel_pt.h perf/x86/intel/pt: Add interface to stop Intel PT logging 2015-11-23 09:58:26 +01:00
intel_punit_ipc.h platform:x86: add Intel P-Unit mailbox IPC driver 2016-01-19 15:49:36 -08:00
intel_scu_ipc.h x86,mrst: Power control commands update 2011-12-05 12:42:11 +01:00
intel_telemetry.h platform/x86: Add Intel Telemetry Core Driver 2016-01-19 17:35:50 -08:00
io.h libnvdimm for 4.3: 2015-09-08 14:35:59 -07:00
io_apic.h x86: Cleanup irq_domain ops 2015-04-24 15:36:55 +02:00
iomap.h
iommu.h iommu: Remove group_mf 2012-06-25 13:48:30 +02:00
iommu_table.h x86/iommu: Fix header comments regarding standard and _FINISH macros 2015-04-09 10:56:31 +02:00
iosf_mbi.h ACPI / LPSS: override power state for LPSS DMA device 2016-01-07 14:11:32 +01:00
ipi.h x86/apic: Deinline __default_send_IPI_*, save ~200 bytes 2016-03-08 12:26:41 +01:00
irq.h x86/irq: Call irq_force_move_complete with irq descriptor 2016-01-15 13:44:01 +01:00
irq_regs.h x86: replace percpu_xxx funcs with this_cpu_xxx 2012-05-14 14:15:31 -07:00
irq_remapping.h irq_remapping: move structs outside #ifdef 2015-10-01 15:06:42 +02:00
irq_vectors.h x86/vm86: Move the vm86 IRQ definitions to vm86.h 2015-07-31 13:31:10 +02:00
irq_work.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
irqdomain.h x86/irq: Move irqdomain specific code into asm/irqdomain.h 2015-04-24 15:36:55 +02:00
irqflags.h x86/asm/entry: Drop now unused ENABLE_INTERRUPTS_SYSEXIT32 2015-04-03 10:34:19 +02:00
ist.h UAPI: (Scripted) Disintegrate arch/x86/include/asm 2012-12-14 22:37:13 +00:00
jump_label.h x86/asm: Add asm macros for static keys/jump labels 2015-11-24 09:56:44 +01:00
kasan.h x86/kasan: Define KASAN_SHADOW_OFFSET per architecture 2015-08-22 14:54:55 +02:00
kbdleds.h keyboard: Use BIOS Keyboard variable to set Numlock 2012-05-08 14:19:41 -07:00
kdebug.h x86/kexec: Remove obsolete 'in_crash_kexec' flag 2015-10-12 09:43:11 +02:00
kexec-bzimage64.h kexec-bzImage64: support for loading bzImage using 64bit entry 2014-08-08 15:57:33 -07:00
kexec.h kexec: support for kexec on panic using new system call 2014-08-08 15:57:33 -07:00
kgdb.h kgdb: x86: Return all segment registers also in 64-bit mode 2012-03-22 15:07:15 -05:00
kmap_types.h
kmemcheck.h
kprobes.h kprobes/x86: Remove stale ARCH_SUPPORTS_KPROBES_ON_FTRACE define 2014-10-17 07:18:34 +02:00
kvm_emulate.h KVM: x86: add read_phys to x86_emulate_ops 2015-11-04 16:24:31 +01:00
kvm_guest.h x86: kvm guest: pvclock vsyscall support 2012-11-27 23:29:10 -02:00
kvm_host.h KVM: x86: remove eager_fpu field of struct kvm_vcpu_arch 2016-03-09 14:04:36 +01:00
kvm_page_track.h KVM: page track: add notifier support 2016-03-03 14:36:22 +01:00
kvm_para.h x86/mm: Always enable CONFIG_DEBUG_RODATA and remove the Kconfig option 2016-02-22 08:51:38 +01:00
lguest.h lguest: Map switcher text R/O 2016-01-12 12:17:28 +01:00
lguest_hcall.h lguest: remove NOTIFY call and eventfd facility. 2015-02-11 16:47:46 +10:30
linkage.h ix86: Tighten asmlinkage_protect() constraints 2013-01-24 11:25:59 +01:00
livepatch.h klp: remove CONFIG_LIVEPATCH dependency from klp headers 2016-03-06 22:22:10 +01:00
local.h x86, bitops: Correct the assembly constraints to testing bitops 2013-12-04 14:31:28 -08:00
local64.h
mach_timer.h time: x86: Remove CLOCK_TICK_RATE from mach_timer.h 2011-11-21 19:00:57 -08:00
mach_traps.h x86/mrst: Avoid reporting wrong nmi status 2011-11-10 16:21:01 +01:00
math_emu.h x86/vm86: Clean up vm86.h includes 2015-07-31 13:31:10 +02:00
mc146818rtc.h x86: Simplify __HAVE_ARCH_CMPXCHG tests 2014-07-11 17:28:51 -07:00
mce.h Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 09:32:27 -07:00
microcode.h x86/microcode: Untangle from BLK_DEV_INITRD 2016-02-09 11:41:15 +01:00
microcode_amd.h x86/microcode: Merge the early microcode loader 2015-10-21 11:22:12 +02:00
microcode_intel.h x86/microcode/intel: Get rid of DWSIZE 2016-03-08 09:08:44 +01:00
misc.h x86: Improve the printout of the SMP bootup CPU table 2013-09-28 10:10:26 +02:00
mmconfig.h x86: delete __cpuinit usage from all x86 files 2013-07-14 19:36:56 -04:00
mmu.h x86/vdso: Track each mm's loaded vDSO image as well as its base 2016-01-12 11:59:34 +01:00
mmu_context.h x86/mm: Factor out LDT init from context init 2016-02-18 19:46:31 +01:00
mmx.h
mmzone.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
mmzone_32.h x86, platforms: Remove NUMAQ 2014-02-27 08:07:39 -08:00
mmzone_64.h
module.h x86, 386 removal: Remove CONFIG_M386 from Kconfig 2012-11-29 13:23:01 -08:00
mpspec.h x86, apic: Remove mps_oem_check callback 2014-07-31 08:05:42 -07:00
mpspec_def.h MCA: delete all remaining traces of microchannel bus support. 2012-05-17 19:06:13 -04:00
mpx.h x86/mpx: Support 32-bit binaries on 64-bit kernels 2015-06-09 12:24:34 +02:00
mshyperv.h mshyperv: fix recognition of Hyper-V guest crash MSR's 2015-08-04 22:30:44 -07:00
msi.h x86/irq: Export functions to allow MSI domains in modules 2015-12-20 12:40:49 +01:00
msidef.h
msr-index.h Power management and ACPI material for v4.6-rc1, part 1 2016-03-16 14:10:53 -07:00
msr-trace.h x86, tracing, perf: Add trace point for MSR accesses 2015-12-06 12:56:10 +01:00
msr.h Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-01-11 17:45:32 -08:00
mtrr.h x86/mm/mtrr: Avoid #ifdeffery with phys_wc_to_mtrr_index() 2015-05-27 14:41:00 +02:00
mutex.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
mutex_32.h x86: Simplify __HAVE_ARCH_CMPXCHG tests 2014-07-11 17:28:51 -07:00
mutex_64.h compiler/gcc4: Add quirk for 'asm goto' miscompilation bug 2013-10-11 07:39:14 +02:00
mwait.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
nmi.h x86/nmi: Push duration printk() to irq context 2014-02-09 13:17:22 +01:00
nops.h x86, nop: Make the ASM_NOP* macros work from assembly 2012-04-19 15:07:42 -07:00
numa.h x86/mm/numa: Drop dead code and rename setup_node_data() to setup_alloc_data() 2014-09-16 08:55:10 +02:00
numa_32.h
olpc.h x86: OLPC: switch over to using new EC driver on x86 2012-07-31 23:27:30 -04:00
olpc_ofw.h
page.h arm64,ia64,ppc,s390,sh,tile,um,x86,mm: remove default gate area 2014-08-08 15:57:27 -07:00
page_32.h x86/mm: Implement ASLR for hugetlb mappings 2013-11-19 14:24:50 +01:00
page_32_types.h x86_64, traps: Stop using IST for #SS 2014-11-23 13:56:19 -08:00
page_64.h x86_64,vsyscall: Make vsyscall emulation configurable 2014-11-03 21:44:57 +01:00
page_64_types.h x86/asm: Move PUD_PAGE macros to page_types.h 2015-09-22 21:27:32 +02:00
page_types.h x86/mm: Align macro defines 2015-12-19 11:53:40 +01:00
paravirt.h x86/paravirt: Create a stack frame in PV_CALLEE_SAVE_REGS_THUNK 2016-02-24 08:35:42 +01:00
paravirt_types.h x86/paravirt: Add stack frame dependency to PVOP inline asm calls 2016-02-24 08:35:42 +01:00
parport.h X86: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
pat.h x86/mm/pat: Emulate PAT when it is disabled 2015-06-07 15:28:52 +02:00
pci-direct.h
pci-functions.h
pci.h Merge branch 'pci/host-hv' into next 2016-03-15 08:56:16 -05:00
pci_64.h
pci_x86.h Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" 2016-02-27 08:52:20 -06:00
percpu.h x86-64: Use RIP-relative addressing for most per-CPU accesses 2014-11-04 20:43:14 +01:00
perf_event.h perf/x86/intel: Add definition for PT PMI bit 2016-03-08 12:18:34 +01:00
perf_event_p4.h percpu: Resolve ambiguities in __get_cpu_var/cpumask_var_t 2014-08-28 08:58:57 -04:00
pgalloc.h x86: expose number of page table levels on Kconfig level 2015-04-14 16:49:02 -07:00
pgtable-2level.h x86: drop _PAGE_FILE and pte_file()-related helpers 2015-02-10 14:30:33 -08:00
pgtable-2level_types.h x86: expose number of page table levels on Kconfig level 2015-04-14 16:49:02 -07:00
pgtable-3level.h x86: drop _PAGE_FILE and pte_file()-related helpers 2015-02-10 14:30:33 -08:00
pgtable-3level_types.h x86: expose number of page table levels on Kconfig level 2015-04-14 16:49:02 -07:00
pgtable.h x86/mm/pkeys: Allow kernel to modify user pkey rights register 2016-02-18 19:46:32 +01:00
pgtable_32.h x86: Remove set_pmd_pfn 2014-09-01 10:15:31 +02:00
pgtable_32_types.h x86: mm: Re-use the early_ioremap fixed area 2014-11-03 13:40:44 +01:00
pgtable_64.h mm: remove remaining references to NUMA hinting bits and helpers 2015-02-12 18:54:08 -08:00
pgtable_64_types.h x86: expose number of page table levels on Kconfig level 2015-04-14 16:49:02 -07:00
pgtable_types.h x86/mm/pkeys: Fill in pkey field in siginfo 2016-02-18 09:32:43 +01:00
pkeys.h mm/core, x86/mm/pkeys: Add execute-only protection keys support 2016-02-18 19:46:33 +01:00
platform_sst_audio.h ASoc: Intel: Atom: add deep buffer definitions for atom platforms 2015-12-19 11:49:56 +00:00
pm-trace.h PM / sleep: add pm-trace support for suspending phase 2015-03-18 15:54:27 +01:00
pmc_atom.h x86/platform/intel/pmc_atom: Add Cherrytrail PMC interface 2015-07-06 18:39:38 +02:00
pmem.h libnvdimm, pmem: clear poison on write 2016-03-09 15:15:32 -08:00
posix_types.h UAPI: (Scripted) Disintegrate arch/x86/include/asm 2012-12-14 22:37:13 +00:00
preempt.h sched/x86: Add stack frame dependency to __preempt_schedule[_notrace]() 2016-02-24 08:35:45 +01:00
probe_roms.h
processor-cyrix.h
processor-flags.h UAPI: (Scripted) Disintegrate arch/x86/include/asm 2012-12-14 22:37:13 +00:00
processor.h Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 09:32:27 -07:00
prom.h x86, devicetree, irq: Use common mechanism to support irqdomain 2014-06-21 23:05:43 +02:00
proto.h x86/entry: Vastly simplify SYSENTER TF (single-step) handling 2016-03-10 09:48:13 +01:00
ptrace.h x86/entry: Remove do_notify_resume(), syscall_trace_leave(), and their TIF masks 2015-08-05 10:54:35 +02:00
pvclock-abi.h Revert "KVM: x86: zero kvmclock_offset when vcpu0 initializes kvmclock system MSR" 2015-09-28 13:06:37 +02:00
pvclock.h x86/vsdo: Fix build on PARAVIRT_CLOCK=y, KVM_GUEST=n 2016-01-06 10:49:53 +01:00
qrwlock.h locking/qrwlock: Implement queue_write_unlock() using smp_store_release() 2015-08-12 11:59:05 +02:00
qspinlock.h locking/qspinlock/x86: Only emit the test-and-set fallback when building guest support 2015-09-11 07:50:12 +02:00
qspinlock_paravirt.h x86/locking: Create stack frame in PV unlock 2016-02-24 08:35:44 +01:00
realmode.h x86, realmode: Separate real_mode reserve and setup 2013-01-29 15:13:24 -08:00
reboot.h x86/nmi: Save regs in crash dump on external NMI 2015-12-19 11:07:01 +01:00
reboot_fixups.h
required-features.h x86/cpufeature, x86/mm/pkeys: Add protection keys related CPUID definitions 2016-02-16 10:11:13 +01:00
rio.h
rmwcc.h x86, bitops: Correct the assembly constraints to testing bitops 2013-12-04 14:31:28 -08:00
rtc.h
rwsem.h x86 rwsem: avoid taking slow path when stealing write lock 2013-05-07 07:20:17 -07:00
seccomp.h x86: switch to using asm-generic for seccomp.h 2015-04-17 09:04:10 -04:00
sections.h x86/mm: Always enable CONFIG_DEBUG_RODATA and remove the Kconfig option 2016-02-22 08:51:38 +01:00
segment.h x86/asm/irq: Stop relying on magic JMP behavior for early_idt_handlers 2015-06-02 09:39:40 +02:00
serial.h serial: 8250: remove Kconfig indirection 2015-05-06 22:27:00 +02:00
setup.h x86: kaslr: fix build due to missing ALIGN definition 2015-04-29 21:54:54 +02:00
setup_arch.h
shmparam.h
sigcontext.h x86/headers: Remove <asm/sigcontext.h> references on the kernel side 2015-09-08 10:06:05 +02:00
sigframe.h x86/headers: Remove <asm/sigcontext.h> references on the kernel side 2015-09-08 10:06:05 +02:00
sighandling.h x86/signal/64: Re-add support for SS in the 64-bit signal context 2016-02-17 08:32:11 +01:00
signal.h x86/headers: Remove <asm/sigcontext.h> references on the kernel side 2015-09-08 10:06:05 +02:00
simd.h x86/fpu: Rename i387.h to fpu/api.h 2015-05-19 15:47:30 +02:00
smap.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
smp.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
sparsemem.h
special_insns.h x86/mm/pkeys: Add functions to fetch PKRU 2016-02-18 09:32:43 +01:00
spinlock.h locking/pvqspinlock: Rename QUEUED_SPINLOCK to QUEUED_SPINLOCKS 2015-05-11 09:52:09 +02:00
spinlock_types.h locking/pvqspinlock: Rename QUEUED_SPINLOCK to QUEUED_SPINLOCKS 2015-05-11 09:52:09 +02:00
sta2x11.h mfd: Add driver for STA2X11 MFD block 2012-05-09 15:34:28 +02:00
stackprotector.h x86/asm/tsc: Rename native_read_tsc() to rdtsc() 2015-07-06 15:23:28 +02:00
stacktrace.h perf: generalize perf_callchain 2016-02-20 00:21:44 -05:00
string.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
string_32.h
string_64.h x86/mm, x86/mce: Add memcpy_mcsafe() 2016-03-08 17:54:38 +01:00
suspend.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers 2012-10-02 18:01:25 +01:00
suspend_32.h x86/pm: Introduce quirk framework to save/restore extra MSR registers around suspend/resume 2015-11-26 10:04:53 +01:00
suspend_64.h x86/pm: Introduce quirk framework to save/restore extra MSR registers around suspend/resume 2015-11-26 10:04:53 +01:00
svm.h UAPI: (Scripted) Disintegrate arch/x86/include/asm 2012-12-14 22:37:13 +00:00
swiotlb.h x86: enable DMA CMA with swiotlb 2014-06-04 16:53:57 -07:00
switch_to.h x86/sched/64: Don't save flags on context switch (reinstated) 2015-09-25 09:29:17 +02:00
sync_bitops.h arch,x86: Convert smp_mb__*() 2014-04-18 14:20:46 +02:00
sys_ia32.h unify compat fanotify_mark(2), switch to COMPAT_SYSCALL_DEFINE 2013-05-09 13:46:38 -04:00
syscall.h x86/syscalls: Give sys_call_ptr_t a useful type 2015-10-09 09:41:08 +02:00
syscalls.h x86/vm86: Clean up vm86.h includes 2015-07-31 13:31:10 +02:00
sysfb.h x86: sysfb: move EFI quirks from efifb to sysfb 2013-08-02 16:17:47 -07:00
tce.h
thread_info.h x86/entry: Call enter_from_user_mode() with IRQs off 2016-03-10 10:53:26 +01:00
time.h
timer.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-01-20 12:03:57 -08:00
timex.h
tlb.h x86-32: Fix possible incomplete TLB invalidate with PAE pagetables 2013-04-12 16:56:47 -07:00
tlbflush.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 10:45:39 -07:00
topology.h x86/topology: Create logical package id 2016-02-29 09:35:18 +01:00
trace_clock.h tracing: Format non-nanosec times from tsc clock without a decimal point. 2012-11-13 15:48:40 -05:00
traps.h x86/entry: Remove exception_enter() from most trap handlers 2015-07-07 10:59:09 +02:00
tsc.h x86/tsc: Always Running Timer (ART) correlated clocksource 2016-03-03 14:23:34 -08:00
uaccess.h Merge branch 'ras/core' into core/objtool, to pick up the new exception table format 2016-02-25 09:01:09 +01:00
uaccess_32.h x86: fix SMAP in 32-bit environments 2016-02-23 16:25:20 -08:00
uaccess_64.h x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
unaligned.h
unistd.h sys_sgetmask/sys_ssetmask: add CONFIG_SGETMASK_SYSCALL 2014-06-04 16:54:14 -07:00
uprobes.h uprobes/x86: Rename arch_uprobe->def to ->defparam, minor comment updates 2014-06-05 16:21:57 +02:00
user.h x86/fpu: Rename xsave.header::xstate_bv to 'xfeatures' 2015-05-19 15:47:35 +02:00
user32.h
user_32.h
user_64.h
vdso.h x86/vdso: Use .fault for the vDSO text mapping 2016-01-12 11:59:34 +01:00
vga.h x86, ia64: Move EFI_FB vga_default_device() initialization to pci_vga_fixup() 2014-07-10 16:48:48 -06:00
vgtod.h x86/vdso: Disallow vvar access to vclock IO for never-used vclocks 2016-01-12 11:59:35 +01:00
virtext.h x86: Store a per-cpu shadow copy of CR4 2015-02-04 12:10:42 +01:00
vm86.h x86/vm86: Rename vm86->v86flags and v86mask 2015-07-31 13:31:11 +02:00
vmx.h KVM: VMX: Enable and initialize VMX TSC scaling 2015-11-10 12:06:19 +01:00
vsyscall.h x86_64,vsyscall: Make vsyscall emulation configurable 2014-11-03 21:44:57 +01:00
vvar.h x86,vdso: Use LSL unconditionally for vgetcpu 2014-11-03 13:41:53 +01:00
word-at-a-time.h word-at-a-time: make the interfaces truly generic 2012-05-26 11:33:40 -07:00
x2apic.h x86/apic: Factor out default target_cpus() operation 2012-06-06 10:22:17 +02:00
x86_init.h Merge branch 'linus' into x86/cleanups 2015-12-19 11:49:13 +01:00
xor.h x86/fpu: Rename i387.h to fpu/api.h 2015-05-19 15:47:30 +02:00
xor_32.h x86/cpufeature: Remove unused and seldomly used cpu_has_xx macros 2015-12-19 11:49:55 +01:00
xor_64.h x86/xor: Add alternative SSE implementation only prefetching once per 64-byte line 2013-01-25 09:23:50 +01:00
xor_avx.h x86/fpu: Rename i387.h to fpu/api.h 2015-05-19 15:47:30 +02:00