linux-stable/arch/x86/include/asm
Linus Torvalds 97d052ea3f A set of locking fixes and updates:
- Untangle the header spaghetti which causes build failures in various
     situations caused by the lockdep additions to seqcount to validate that
     the write side critical sections are non-preemptible.
 
   - The seqcount associated lock debug addons which were blocked by the
     above fallout.
 
     seqcount writers contrary to seqlock writers must be externally
     serialized, which usually happens via locking - except for strict per
     CPU seqcounts. As the lock is not part of the seqcount, lockdep cannot
     validate that the lock is held.
 
     This new debug mechanism adds the concept of associated locks.
     sequence count has now lock type variants and corresponding
     initializers which take a pointer to the associated lock used for
     writer serialization. If lockdep is enabled the pointer is stored and
     write_seqcount_begin() has a lockdep assertion to validate that the
     lock is held.
 
     Aside of the type and the initializer no other code changes are
     required at the seqcount usage sites. The rest of the seqcount API is
     unchanged and determines the type at compile time with the help of
     _Generic which is possible now that the minimal GCC version has been
     moved up.
 
     Adding this lockdep coverage unearthed a handful of seqcount bugs which
     have been addressed already independent of this.
 
     While generaly useful this comes with a Trojan Horse twist: On RT
     kernels the write side critical section can become preemtible if the
     writers are serialized by an associated lock, which leads to the well
     known reader preempts writer livelock. RT prevents this by storing the
     associated lock pointer independent of lockdep in the seqcount and
     changing the reader side to block on the lock when a reader detects
     that a writer is in the write side critical section.
 
  - Conversion of seqcount usage sites to associated types and initializers.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAl8xmPYTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoTuQEACyzQCjU8PgehPp9oMqWzaX2fcVyuZO
 QU2yw6gmz2oTz3ZHUNwdW8UnzGh2OWosK3kDruoD9FtSS51lER1/ISfSPCGfyqxC
 KTjOcB1Kvxwq/3LcCx7Zi3ZxWApat74qs3EhYhKtEiQ2Y9xv9rLq8VV1UWAwyxq0
 eHpjlIJ6b6rbt+ARslaB7drnccOsdK+W/roNj4kfyt+gezjBfojGRdMGQNMFcpnv
 shuTC+vYurAVIiVA/0IuizgHfwZiXOtVpjVoEWaxg6bBH6HNuYMYzdSa/YrlDkZs
 n/aBI/Xkvx+Eacu8b1Zwmbzs5EnikUK/2dMqbzXKUZK61eV4hX5c2xrnr1yGWKTs
 F/juh69Squ7X6VZyKVgJ9RIccVueqwR2EprXWgH3+RMice5kjnXH4zURp0GHALxa
 DFPfB6fawcH3Ps87kcRFvjgm6FBo0hJ1AxmsW1dY4ACFB9azFa2euW+AARDzHOy2
 VRsUdhL9CGwtPjXcZ/9Rhej6fZLGBXKr8uq5QiMuvttp4b6+j9FEfBgD4S6h8csl
 AT2c2I9LcbWqyUM9P4S7zY/YgOZw88vHRuDH7tEBdIeoiHfrbSBU7EQ9jlAKq/59
 f+Htu2Io281c005g7DEeuCYvpzSYnJnAitj5Lmp/kzk2Wn3utY1uIAVszqwf95Ul
 81ppn2KlvzUK8g==
 =7Gj+
 -----END PGP SIGNATURE-----

Merge tag 'locking-urgent-2020-08-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull locking updates from Thomas Gleixner:
 "A set of locking fixes and updates:

   - Untangle the header spaghetti which causes build failures in
     various situations caused by the lockdep additions to seqcount to
     validate that the write side critical sections are non-preemptible.

   - The seqcount associated lock debug addons which were blocked by the
     above fallout.

     seqcount writers contrary to seqlock writers must be externally
     serialized, which usually happens via locking - except for strict
     per CPU seqcounts. As the lock is not part of the seqcount, lockdep
     cannot validate that the lock is held.

     This new debug mechanism adds the concept of associated locks.
     sequence count has now lock type variants and corresponding
     initializers which take a pointer to the associated lock used for
     writer serialization. If lockdep is enabled the pointer is stored
     and write_seqcount_begin() has a lockdep assertion to validate that
     the lock is held.

     Aside of the type and the initializer no other code changes are
     required at the seqcount usage sites. The rest of the seqcount API
     is unchanged and determines the type at compile time with the help
     of _Generic which is possible now that the minimal GCC version has
     been moved up.

     Adding this lockdep coverage unearthed a handful of seqcount bugs
     which have been addressed already independent of this.

     While generally useful this comes with a Trojan Horse twist: On RT
     kernels the write side critical section can become preemtible if
     the writers are serialized by an associated lock, which leads to
     the well known reader preempts writer livelock. RT prevents this by
     storing the associated lock pointer independent of lockdep in the
     seqcount and changing the reader side to block on the lock when a
     reader detects that a writer is in the write side critical section.

   - Conversion of seqcount usage sites to associated types and
     initializers"

* tag 'locking-urgent-2020-08-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (25 commits)
  locking/seqlock, headers: Untangle the spaghetti monster
  locking, arch/ia64: Reduce <asm/smp.h> header dependencies by moving XTP bits into the new <asm/xtp.h> header
  x86/headers: Remove APIC headers from <asm/smp.h>
  seqcount: More consistent seqprop names
  seqcount: Compress SEQCNT_LOCKNAME_ZERO()
  seqlock: Fold seqcount_LOCKNAME_init() definition
  seqlock: Fold seqcount_LOCKNAME_t definition
  seqlock: s/__SEQ_LOCKDEP/__SEQ_LOCK/g
  hrtimer: Use sequence counter with associated raw spinlock
  kvm/eventfd: Use sequence counter with associated spinlock
  userfaultfd: Use sequence counter with associated spinlock
  NFSv4: Use sequence counter with associated spinlock
  iocost: Use sequence counter with associated spinlock
  raid5: Use sequence counter with associated spinlock
  vfs: Use sequence counter with associated spinlock
  timekeeping: Use sequence counter with associated raw spinlock
  xfrm: policy: Use sequence counters with associated lock
  netfilter: nft_set_rbtree: Use sequence counter with associated rwlock
  netfilter: conntrack: Use sequence counter with associated spinlock
  sched: tasks: Use sequence counter with associated spinlock
  ...
2020-08-10 19:07:44 -07:00
..
crypto crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN 2020-01-09 11:30:53 +08:00
e820 x86/efi: EFI soft reservation to E820 enumeration 2019-11-07 15:44:14 +01:00
fpu Merge branch 'work.regset' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-08-07 09:29:25 -07:00
numachip
trace x86/entry: Convert reschedule interrupt to IDTENTRY_SYSVEC_SIMPLE 2020-06-11 15:15:16 +02:00
uv The biggest change is the removal of SGI UV1 support, which allowed the 2020-08-03 17:38:43 -07:00
vdso x86/vdso: Unbreak paravirt VDSO clocks 2020-06-09 16:36:49 +02:00
xen xen: hypercall.h: fix duplicated word 2020-08-03 07:48:39 +02:00
acenv.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
acpi.h x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove <asm/realmode.h> from <asm/acpi.h> 2019-12-10 10:15:48 +01:00
agp.h mm: introduce include/linux/pgtable.h 2020-06-09 09:39:13 -07:00
alternative-asm.h x86/nospec, objtool: Introduce ANNOTATE_IGNORE_ALTERNATIVE 2019-04-03 09:39:46 +02:00
alternative.h x86: alternative.h: use asm_inline for all alternative variants 2019-09-15 20:14:15 +02:00
amd_nb.h x86/mce/amd: Cleanup threshold device remove path 2020-04-14 15:49:51 +02:00
apb_timer.h x86/apb_timer: Drop unused declaration and macro 2020-05-27 13:12:49 +02:00
apic.h x86/entry: Convert various hypervisor vectors to IDTENTRY_SYSVEC 2020-06-11 15:15:15 +02:00
apicdef.h
apm.h x86/apm: Don't access __preempt_count with zeroed fs 2018-07-16 17:59:57 +02:00
arch_hweight.h x86/kconfig: Disable CONFIG_GENERIC_HWEIGHT and remove __HAVE_ARCH_SW_HWEIGHT 2019-05-13 11:07:33 +02:00
archrandom.h x86/cpu: Use RDRAND and RDSEED mnemonics in archrandom.h 2020-05-18 19:50:47 +02:00
asm-offsets.h
asm-prototypes.h mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
asm.h x86/asm: Unify __ASSEMBLY__ blocks 2020-06-15 19:29:36 +02:00
atomic.h locking/atomic: Move ATOMIC_INIT into linux/types.h 2020-07-29 16:14:18 +02:00
atomic64_32.h locking/atomics: Flip fallbacks and instrumentation 2020-06-11 08:03:24 +02:00
atomic64_64.h locking/atomics: Flip fallbacks and instrumentation 2020-06-11 08:03:24 +02:00
audit.h x86/audit: Fix a -Wmissing-prototypes warning for ia32_classify_syscall() 2020-05-19 18:03:07 +02:00
barrier.h x86: Remove X86_FEATURE_MFENCE_RDTSC 2019-07-22 12:00:51 +02:00
bios_ebda.h
bitops.h x86, kcsan: Remove __no_kcsan_or_inline usage 2020-06-15 14:10:08 +02:00
boot.h x86: Add support for ZSTD compressed kernel 2020-07-31 11:49:09 +02:00
bootparam_utils.h x86/boot: Preserve boot_params.secure_boot from sanitizing 2019-09-02 09:17:45 +02:00
bug.h compiler.h: Move instrumentation_begin()/end() to new <linux/instrumentation.h> header 2020-07-24 13:56:23 +02:00
bugs.h x86/mpx: remove MPX from arch/x86 2020-01-23 10:41:20 -08:00
cache.h
cacheflush.h asm-generic: don't include <linux/mm.h> in cacheflush.h 2020-06-08 11:05:57 -07:00
cacheinfo.h x86/cpu: Get cache info and setup cache cpumap for Hygon Dhyana 2018-09-27 18:28:57 +02:00
ce4100.h
checksum.h x86: switch 32bit csum_and_copy_to_user() to user_access_{begin,end}() 2020-05-29 16:11:48 -04:00
checksum_32.h x86: switch 32bit csum_and_copy_to_user() to user_access_{begin,end}() 2020-05-29 16:11:48 -04:00
checksum_64.h x86: switch 32bit csum_and_copy_to_user() to user_access_{begin,end}() 2020-05-29 16:11:48 -04:00
clocksource.h x86: Introduce asm/vdso/clocksource.h 2020-03-21 15:23:54 +01:00
cmdline.h
cmpxchg.h x86: Fix various typos in comments 2018-12-03 10:49:13 +01:00
cmpxchg_32.h x86: cmpxchg_32.h: Delete duplicated word 2020-07-26 12:47:22 +02:00
cmpxchg_64.h locking/atomics/x86: Reduce arch_cmpxchg64*() instrumentation 2018-07-25 11:53:58 +02:00
compat.h signal: refactor copy_siginfo_to_user32 2020-05-05 16:46:09 -04:00
cpu.h x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup 2020-06-15 14:18:37 +02:00
cpu_device_id.h x86/cpu: Add a X86_MATCH_INTEL_FAM6_MODEL_STEPPINGS() macro 2020-05-07 13:48:05 +02:00
cpu_entry_area.h x86/entry: Remove DBn stacks 2020-06-11 15:15:23 +02:00
cpufeature.h x86/cpufeature: Explain the macro duplication 2019-08-28 08:38:39 +02:00
cpufeatures.h Misc changes: 2020-08-03 17:08:02 -07:00
cpuidle_haltpoll.h cpuidle-haltpoll: vcpu hotplug support 2019-09-03 09:36:36 +02:00
cpumask.h x86/entry, cpumask: Provide non-instrumented variant of cpu_is_offline() 2020-06-15 14:10:09 +02:00
crash.h Merge branch 'x86-kdump-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-11-26 09:48:19 -08:00
current.h
debugreg.h x86/entry: __always_inline debugreg for noinstr 2020-06-11 15:15:26 +02:00
delay.h x86/delay: Introduce TPAUSE delay 2020-05-07 16:06:20 +02:00
desc.h x86/idt: Consolidate idt functionality 2020-06-11 15:15:26 +02:00
desc_defs.h
device.h x86: Hide the archdata.iommu field behind generic IOMMU_API 2020-05-27 16:44:05 +02:00
disabled-features.h MPX requires recompiling applications, which requires compiler support. 2020-01-30 16:11:50 -08:00
div64.h sched/cputime: Improve cputime_adjust() 2020-06-15 14:10:00 +02:00
dma-mapping.h docs: fix references for DMA*.txt files 2020-06-26 10:01:32 -06:00
dma.h x86/dma: Fix max PFN arithmetic overflow on 32 bit systems 2020-05-28 20:21:32 +02:00
dmi.h x86: Don't include linux/irq.h from asm/hardirq.h 2018-08-05 09:53:13 +02:00
doublefault.h x86/32: Remove CONFIG_DOUBLEFAULT 2020-04-14 14:24:05 +02:00
dwarf2.h x86: remove always-defined CONFIG_AS_CFI_SECTIONS 2020-04-09 00:01:59 +09:00
edac.h
efi.h x86/efi: Remove unused EFI_UV1_MEMMAP code 2020-07-17 16:47:48 +02:00
elf.h kill elf_fpxregs_t 2020-07-27 14:29:23 -04:00
emergency-restart.h
emulate_prefix.h x86: xen: kvm: Gather the definition of emulate prefixes 2019-10-17 21:31:57 +02:00
entry-common.h x86/entry: Use generic syscall exit functionality 2020-07-24 15:04:59 +02:00
espfix.h
exec.h
extable.h x86/fault: Plumb error code and fault address through to fault handlers 2018-09-03 15:12:09 +02:00
fb.h
fixmap.h locking/seqlock, headers: Untangle the spaghetti monster 2020-08-06 16:13:13 +02:00
floppy.h floppy: use symbolic register names in the x86 port 2020-05-12 19:34:53 +03:00
frame.h x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h 2019-06-25 10:23:45 +02:00
fsgsbase.h x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase 2020-07-01 15:27:20 +02:00
ftrace.h Various tracing fixes: 2020-05-14 11:46:52 -07:00
futex.h x86: get rid of user_atomic_cmpxchg_inatomic() 2020-03-27 23:58:55 -04:00
gart.h
GEN-for-each-reg.h x86: Simplify retpoline declaration 2020-04-30 20:14:34 +02:00
genapic.h
geode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 206 2019-05-30 11:29:53 -07:00
hardirq.h x86/kvm/vmx: Move guest enter/exit into .noinstr.text 2020-07-09 07:08:40 -04:00
highmem.h arch/kmap: define kmap_atomic_prot() for all arch's 2020-06-04 19:06:22 -07:00
hpet.h x86/hpet: Move clockevents into channels 2019-06-28 00:57:24 +02:00
hugetlb.h mm/hugetlb: define a generic fallback for arch_clear_hugepage_flags() 2020-06-03 20:09:46 -07:00
hw_breakpoint.h perf/hw_breakpoint: Remove default hw_breakpoint_arch_parse() 2018-06-26 09:07:58 +02:00
hw_irq.h x86/entry: Convert reschedule interrupt to IDTENTRY_SYSVEC_SIMPLE 2020-06-11 15:15:16 +02:00
hyperv-tlfs.h ARM: 2020-06-03 15:13:47 -07:00
hypervisor.h x86/paravirt: Remove const mark from x86_hyper_xen_hvm variable 2019-07-17 08:09:59 +02:00
i8259.h x86: i8259: Add missing include file 2018-08-15 13:44:10 -07:00
ia32.h
ia32_unistd.h
idtentry.h s390: implement diag318 2020-08-06 12:59:31 -07:00
imr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
inat.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
inat_types.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
init.h
insn-eval.h
insn.h x86: xen: insn: Decode Xen and KVM emulate-prefix signature 2019-10-17 21:31:57 +02:00
inst.h Support for FSGSBASE. Almost 5 years after the first RFC to support it, 2020-08-04 21:16:22 -07:00
intel-family.h x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel CPU family 2020-07-25 12:16:59 +02:00
intel-mid.h x86/platform/intel-mid: Add empty stubs for intel_scu_devices_[create|destroy]() 2020-04-24 11:18:21 +01:00
intel_ds.h perf/x86/intel: Add Icelake support 2019-04-16 12:26:18 +02:00
intel_mid_vrtc.h x86: Convert x86_platform_ops to timespec64 2018-05-19 14:03:14 +02:00
intel_pconfig.h x86/pconfig: Provide defines and helper to run MKTME_KEY_PROG leaf 2018-03-12 12:10:54 +01:00
intel_pt.h perf/x86/intel: Support PEBS output to PT 2019-08-28 11:29:39 +02:00
intel_punit_ipc.h
intel_scu_ipc.h platform/x86: intel_scu_ipc: Add managed function to register SCU IPC 2020-04-24 11:17:44 +01:00
intel_scu_ipc_legacy.h platform/x86: intel_scu_ipc: Introduce new SCU IPC API 2020-04-24 11:17:28 +01:00
intel_telemetry.h platform/x86: intel_pmc_ipc: Convert to MFD 2020-04-24 11:18:44 +01:00
invpcid.h x86/cpu: Use INVPCID mnemonic in invpcid.h 2020-05-12 16:05:30 +02:00
io.h x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction 2020-01-24 11:18:45 +05:30
io_apic.h x86/ioapic: Remove unused "IOAPIC_AUTO" define 2020-07-25 12:00:56 +02:00
io_bitmap.h x86/ioperm: Fix io bitmap invalidation on Xen PV 2020-07-18 12:31:49 +02:00
iomap.h mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
iommu.h iommu/vt-d: Check VT-d RMRR region in BIOS is reported as reserved 2019-11-11 16:06:07 +01:00
iommu_table.h
iosf_mbi.h media: atomisp: move CCK endpoint address to generic header 2020-07-18 07:17:16 +02:00
irq.h x86/entry: Unbreak __irqentry_text_start/end magic 2020-06-11 15:15:29 +02:00
irq_remapping.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 2019-06-05 17:37:06 +02:00
irq_stack.h x86/entry: Provide helpers for executing on the irqstack 2020-06-11 15:15:07 +02:00
irq_vectors.h x86/irq: Fix outdated comments 2019-04-22 11:42:59 +02:00
irq_work.h x86/entry: Convert various system vectors 2020-06-11 15:15:14 +02:00
irqdomain.h
irqflags.h x86/entry: __always_inline irqflags for noinstr 2020-06-11 15:15:27 +02:00
ist.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 2019-05-24 17:39:02 +02:00
jailhouse_para.h x86/jailhouse: Fix incorrect SPDX identifier 2018-04-23 10:17:28 +02:00
jump_label.h x86/jump_label: Batch jump label updates 2019-06-17 12:09:23 +02:00
kasan.h
kaslr.h x86/mm: simplify init_trampoline() and surrounding logic 2020-06-09 09:39:13 -07:00
kbdleds.h
Kbuild asm-generic: make more kernel-space headers mandatory 2020-04-02 09:35:25 -07:00
kdebug.h x86/dumpstack: Add log_lvl to __show_regs() 2020-07-22 23:56:53 +02:00
kexec-bzimage64.h kexec_file,x86,powerpc: factor out kexec_file_ops functions 2018-04-13 17:10:27 -07:00
kexec.h x86/kdump: Remove the backup region handling 2019-11-14 18:24:43 +01:00
kgdb.h
kmap_types.h
kprobes.h perf/x86: Add perf text poke events for kprobes 2020-06-15 14:09:49 +02:00
kvm_host.h KVM: x86: Specify max TDP level via kvm_configure_mmu() 2020-07-30 18:18:08 -04:00
kvm_page_track.h KVM: Simplify kvm_free_memslot() and all its descendents 2020-03-16 17:57:22 +01:00
kvm_para.h KVM: x86: Use VMCALL and VMMCALL mnemonics in kvm_para.h 2020-07-08 16:21:49 -04:00
kvm_types.h KVM: Move x86's version of struct kvm_mmu_memory_cache to common code 2020-07-09 13:29:42 -04:00
kvm_vcpu_regs.h KVM: x86: Explicitly #define the VCPU_REGS_* indices 2019-02-20 22:47:38 +01:00
kvmclock.h
linkage.h x86/asm: Remove the last GLOBAL user and remove the macro 2019-10-18 11:29:50 +02:00
livepatch.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
local.h x86/asm: 'Simplify' GEN_*_RMWcc() macros 2018-10-16 17:33:54 +02:00
local64.h
mach_timer.h
mach_traps.h
math_emu.h
mc146818rtc.h x86: Convert x86_platform_ops to timespec64 2018-05-19 14:03:14 +02:00
mce.h Merge branch 'x86/entry' into ras/core 2020-06-11 15:17:57 +02:00
mcsafe_test.h x86, nfit_test: Add unit test for memcpy_mcsafe() 2018-05-22 23:18:31 -07:00
mem_encrypt.h x86/mm: Fix -Wmissing-prototypes warnings for arch/x86/mm/init.c 2020-06-17 10:45:46 +02:00
memtype.h x86/mm: Move pgprot2cachemode out of line 2020-04-20 12:39:17 +02:00
microcode.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-04-02 15:16:43 -07:00
microcode_amd.h x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE 2020-04-14 17:34:46 +02:00
microcode_intel.h
misc.h
mmconfig.h
mmu.h mmap locking API: convert mmap_sem comments 2020-06-09 09:39:14 -07:00
mmu_context.h mm: remove unneeded includes of <asm/pgalloc.h> 2020-08-07 11:33:26 -07:00
mmx.h
mmzone.h
mmzone_32.h x86/mm: Drop deprecated DISCONTIGMEM support for 32-bit 2020-05-28 18:34:30 +02:00
mmzone_64.h
module.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
mpspec.h
mpspec_def.h
mshyperv.h x86/entry: Convert various hypervisor vectors to IDTENTRY_SYSVEC 2020-06-11 15:15:15 +02:00
msi.h
msidef.h
msr-index.h Power management updates for 5.9-rc1 2020-08-03 20:28:08 -07:00
msr-trace.h
msr.h x86: Remove X86_FEATURE_MFENCE_RDTSC 2019-07-22 12:00:51 +02:00
mtrr.h x86/mm/pat: Rename <asm/pat.h> => <asm/memtype.h> 2019-12-10 10:12:55 +01:00
mwait.h KVM: VMX: Stop context switching MSR_IA32_UMWAIT_CONTROL 2020-06-22 20:54:57 -04:00
nmi.h x86/nmi: Remove irq_work from the long duration NMI handler 2020-01-11 15:55:39 +01:00
nops.h
nospec-branch.h x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline 2020-06-11 15:14:40 +02:00
numa.h
numa_32.h
olpc.h Platform: OLPC: Move EC-specific functionality out from x86 2019-05-20 17:27:08 +03:00
olpc_ofw.h
orc_lookup.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
orc_types.h objtool: Remove SAVE/RESTORE hints 2020-04-22 10:53:50 +02:00
page.h
page_32.h
page_32_types.h x86/irq/32: Define IRQ_STACK_SIZE 2019-04-17 15:18:36 +02:00
page_64.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-04-02 15:45:30 -07:00
page_64_types.h docs: fix broken documentation links 2019-06-08 13:42:13 -06:00
page_types.h x86/mm: thread pgprot_t through init_memory_mapping() 2020-04-10 15:36:21 -07:00
paravirt.h x86/ioperm: Fix io bitmap invalidation on Xen PV 2020-07-18 12:31:49 +02:00
paravirt_types.h x86/ioperm: Fix io bitmap invalidation on Xen PV 2020-07-18 12:31:49 +02:00
parport.h
pci-direct.h PCI: Make early dump functionality generic 2018-06-29 20:06:07 -05:00
pci-functions.h
pci.h x86/PCI: Define to_pci_sysdata() even when !CONFIG_PCI 2020-02-04 08:44:46 -06:00
pci_x86.h PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set 2018-12-20 10:19:49 +01:00
percpu.h x86/percpu: Remove unused PER_CPU() macro 2020-07-23 11:46:43 +02:00
perf_event.h perf/x86/intel/lbr: Support XSAVES/XRSTORS for LBR context switch 2020-07-08 11:38:56 +02:00
perf_event_p4.h
pgalloc.h asm-generic: pgalloc: provide generic pgd_free() 2020-08-07 11:33:26 -07:00
pgtable-2level.h Revert "x86/mm/legacy: Populate the user page-table with user pgd's" 2018-09-14 17:08:45 +02:00
pgtable-2level_types.h x86/mm/32: implement arch_sync_kernel_mappings() 2020-06-02 10:59:11 -07:00
pgtable-3level.h mmap locking API: convert mmap_sem comments 2020-06-09 09:39:14 -07:00
pgtable-3level_types.h x86/mm/32: implement arch_sync_kernel_mappings() 2020-06-02 10:59:11 -07:00
pgtable-invert.h x86/speculation/l1tf: Exempt zeroed PTEs from inversion 2018-08-17 10:27:36 -07:00
pgtable.h x86/mm/32: Fix -Wmissing prototypes warnings for init.c 2020-06-18 18:04:00 +02:00
pgtable_32.h Merge branch 'uaccess.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-06-10 16:02:54 -07:00
pgtable_32_areas.h mm, x86/mm: Untangle address space layout definitions from basic pgtable type definitions 2019-12-10 10:12:55 +01:00
pgtable_32_types.h mm, x86/mm: Untangle address space layout definitions from basic pgtable type definitions 2019-12-10 10:12:55 +01:00
pgtable_64.h The biggest change is to not sync the vmalloc and ioremap ranges for x86-64 anymore. 2020-08-03 17:25:42 -07:00
pgtable_64_types.h Revert "x86/mm/64: Do not sync vmalloc/ioremap mappings" 2020-08-06 12:02:58 -07:00
pgtable_areas.h mm, x86/mm: Untangle address space layout definitions from basic pgtable type definitions 2019-12-10 10:12:55 +01:00
pgtable_types.h x86/hyperv: allocate the hypercall page with only read and execute bits 2020-06-26 00:27:38 -07:00
pkeys.h x86/pkeys: Add check for pkey "overflow" 2020-02-24 20:25:21 +01:00
platform_sst_audio.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
pm-trace.h
posix_types.h
preempt.h x86/entry: Rename ___preempt_schedule 2020-03-21 16:03:53 +01:00
probe_roms.h
processor-cyrix.h x86/cpu/cyrix: Remove {get,set}Cx86_old macros used for Cyrix processors 2019-03-21 12:28:50 +01:00
processor-flags.h x86/mm/pti: Define X86_CR3_PTI_PCID_USER_BIT on x86_32 2018-07-20 01:11:44 +02:00
processor.h Support for FSGSBASE. Almost 5 years after the first RFC to support it, 2020-08-04 21:16:22 -07:00
prom.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
proto.h
pti.h x86: Use the correct SPDX License Identifier in headers 2019-10-01 20:31:35 +02:00
ptrace.h x86/ptrace: Provide pt_regs helper for entry/exit 2020-07-24 15:04:58 +02:00
purgatory.h x86/kdump: Remove the backup region handling 2019-11-14 18:24:43 +01:00
pvclock-abi.h
pvclock.h x86/vdso: Switch to generic vDSO implementation 2019-06-22 21:21:10 +02:00
qrwlock.h
qspinlock.h x86/kvm: Add "nopvspin" parameter to disable PV spinlocks 2020-07-08 16:21:57 -04:00
qspinlock_paravirt.h locking/pvqspinlock/x86: Use LOCK_PREFIX in __pv_queued_spin_unlock() assembly code 2018-07-25 11:22:20 +02:00
realmode.h x86/boot: Fix a comment's incorrect file reference 2019-12-16 14:09:33 +01:00
reboot.h x86/headers: Fix -Wmissing-prototypes warning 2018-11-23 07:59:59 +01:00
reboot_fixups.h
required-features.h
resctrl.h x86/cpu: Move resctrl CPUID code to resctrl/ 2020-05-06 17:51:21 +02:00
rmwcc.h jump_label: move 'asm goto' support test to Kconfig 2019-01-06 09:46:51 +09:00
seccomp.h
sections.h x86/setup: Fix static memory detection 2020-03-19 11:58:13 +01:00
segment.h x86/stackframe/32: Repair 32-bit Xen PV 2019-11-19 21:58:28 +01:00
serial.h
set_memory.h x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned 2020-06-11 15:19:17 +02:00
setup.h x86/mm: simplify init_trampoline() and surrounding logic 2020-06-09 09:39:13 -07:00
setup_arch.h
shmparam.h
sigcontext.h
sigframe.h x86: switch sigframe sigset handling to explict __get_user()/__put_user() 2020-03-18 15:29:54 -04:00
sighandling.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2020-03-31 11:04:05 -07:00
signal.h x86/entry: Use generic syscall exit functionality 2020-07-24 15:04:59 +02:00
simd.h
smap.h x86,smap: Fix smap_{save,restore}() alternatives 2020-04-30 20:14:31 +02:00
smp.h x86/headers: Remove APIC headers from <asm/smp.h> 2020-08-06 16:13:09 +02:00
sparsemem.h x86/mm: Drop unused MAX_PHYSADDR_BITS 2020-07-24 09:53:06 +02:00
spec-ctrl.h x86/speculation: Prevent stale SPEC_CTRL msr content 2018-11-28 11:57:12 +01:00
special_insns.h x86/cpu: Refactor sync_core() for readability 2020-07-27 12:42:06 +02:00
spinlock.h
spinlock_types.h x86/spinlock: Remove obsolete ticket spinlock macros and types 2020-05-28 21:18:40 +02:00
sta2x11.h
stackprotector.h x86/stackprotector: Pre-initialize canary for secondary CPUs 2020-06-18 13:09:17 +02:00
stacktrace.h x86: add missing const qualifiers for log_lvl 2020-06-09 09:39:12 -07:00
string.h
string_32.h x86/asm: Remove unused __constant_c_x_memset() macro and inlines 2019-01-12 17:54:49 +01:00
string_64.h x86/asm: Remove dead __GNUC__ conditionals 2019-01-12 17:50:48 +01:00
suspend.h x86, hibernate: Rename temp_level4_pgt to temp_pgt 2018-10-03 11:56:34 +02:00
suspend_32.h x86-32/asm/power: Create stack frames in hibernate_asm_32.S 2018-10-03 11:56:33 +02:00
suspend_64.h x86/paravirt: Drop {read,write}_cr8() hooks 2019-07-22 10:12:33 +02:00
svm.h KVM: nSVM: remove trailing padding for struct vmcb_control_area 2020-06-01 04:25:59 -04:00
swiotlb.h x86/dma: Use generic swiotlb_ops 2018-03-20 10:01:57 +01:00
switch_to.h x86/mm: remove vmalloc faulting 2020-06-02 10:59:12 -07:00
sync_bitops.h x86/asm: Modernize sync_bitops.h 2019-04-10 09:53:31 +02:00
sync_core.h x86/cpu: Refactor sync_core() for readability 2020-07-27 12:42:06 +02:00
syscall.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2020-03-31 11:04:05 -07:00
syscall_wrapper.h x86/entry: Fix build error x86 with !CONFIG_POSIX_TIMERS 2020-03-25 10:06:20 +01:00
syscalls.h x86: Remove unneeded includes 2020-03-21 16:03:25 +01:00
sysfb.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
text-patching.h x86/int3: Ensure that poke_int3_handler() is not traced 2020-06-11 15:14:52 +02:00
thread_info.h x86/entry: Use generic syscall entry function 2020-07-24 15:04:59 +02:00
time.h x86/timer: Skip PIT initialization on modern chipsets 2019-06-29 11:35:35 +02:00
timer.h
timex.h
tlb.h asm-generic/tlb: rename HAVE_RCU_TABLE_FREE 2020-02-04 03:05:26 +00:00
tlbbatch.h
tlbflush.h x86/tlb: Restrict access to tlbstate 2020-04-26 18:52:33 +02:00
topology.h x86, sched: check for counters overflow in frequency invariant accounting 2020-06-15 14:10:02 +02:00
trace_clock.h
trapnr.h x86/traps: Split trap numbers out in a separate header 2020-06-11 15:14:42 +02:00
traps.h x86/entry: Convert various system vectors 2020-06-11 15:15:14 +02:00
tsc.h A set of locking fixes and updates: 2020-08-10 19:07:44 -07:00
uaccess.h x86/uaccess: Make __get_user_size() Clang compliant on 32-bit 2020-07-23 12:38:31 +02:00
uaccess_32.h x86: get rid of small constant size cases in raw_copy_{to,from}_user() 2020-03-18 15:53:25 -04:00
uaccess_64.h x86: get rid of small constant size cases in raw_copy_{to,from}_user() 2020-03-18 15:53:25 -04:00
umip.h x86/Kconfig: Rename UMIP config parameter 2019-11-07 11:07:29 +01:00
unaligned.h
unistd.h x86/entry: Move max syscall number calculation to syscallhdr.sh 2020-03-21 16:03:21 +01:00
unwind.h x86/unwind/orc: Fix premature unwind stoppage due to IRET frames 2020-04-25 12:22:29 +02:00
unwind_hints.h objtool: Remove SAVE/RESTORE hints 2020-04-22 10:53:50 +02:00
uprobes.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
user.h
user32.h
user_32.h
user_64.h
vdso.h x86/vdso: Add time napespace page 2020-01-14 12:20:58 +01:00
vermagic.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
vga.h
vgtod.h um: Fix header inclusion 2020-03-23 18:45:14 +01:00
virtext.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 499 2019-06-19 17:09:53 +02:00
vm86.h
vmalloc.h mm, x86/mm: Untangle address space layout definitions from basic pgtable type definitions 2019-12-10 10:12:55 +01:00
vmware.h x86/cpu/vmware: Fix platform detection VMWARE_PORT macro 2019-10-22 00:51:44 +02:00
vmx.h KVM: nVMX: Tweak handling of failure code for nested VM-Enter failure 2020-05-15 12:07:31 -04:00
vmxfeatures.h KVM: VMX: Add VMX_FEATURE_USR_WAIT_PAUSE 2020-02-21 18:05:19 +01:00
vsyscall.h x86/vsyscall: Show something useful on a read fault 2019-06-28 00:04:39 +02:00
vvar.h x86/vdso: Add time napespace page 2020-01-14 12:20:58 +01:00
word-at-a-time.h
x86_init.h x86/kvm: Handle async page faults directly through do_page_fault() 2020-05-19 15:53:57 +02:00
xor.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47 2019-05-24 17:27:13 +02:00
xor_32.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47 2019-05-24 17:27:13 +02:00
xor_64.h
xor_avx.h x86: remove always-defined CONFIG_AS_AVX 2020-04-09 00:01:59 +09:00