linux/arch/x86/include/asm
Pawan Gupta 6606515742 x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3
The "force" argument to write_spec_ctrl_current() is currently ambiguous
as it does not guarantee the MSR write. This is due to the optimization
that writes to the MSR happen only when the new value differs from the
cached value.

This is fine in most cases, but breaks for S3 resume when the cached MSR
value gets out of sync with the hardware MSR value due to S3 resetting
it.

When x86_spec_ctrl_current is same as x86_spec_ctrl_base, the MSR write
is skipped. Which results in SPEC_CTRL mitigations not getting restored.

Move the MSR write from write_spec_ctrl_current() to a new function that
unconditionally writes to the MSR. Update the callers accordingly and
rename functions.

  [ bp: Rework a bit. ]

Fixes: caa0ff24d5 ("x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value")
Suggested-by: Borislav Petkov <bp@alien8.de>
Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Cc: <stable@kernel.org>
Link: https://lore.kernel.org/r/806d39b0bfec2fe8f50dc5446dff20f5bb24a959.1669821572.git.pawan.kumar.gupta@linux.intel.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-12-02 15:45:33 -08:00
..
e820 x86/PCI: Revert "x86/PCI: Clip only host bridge windows for E820 regions" 2022-06-17 14:24:14 -05:00
fpu x86/fpu: Add a helper to prepare AMX state for low-power CPU idle 2022-07-19 18:46:15 +02:00
numachip
shared Intel Trust Domain Extensions 2022-05-23 17:51:12 -07:00
trace x86/fpu: Convert tracing to fpstate 2021-10-20 22:35:04 +02:00
uv x86: Fix various typos in comments 2021-03-18 15:31:53 +01:00
vdso clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86 2021-05-14 14:55:13 +02:00
xen x86/xen: Add support for HVMOP_set_evtchn_upcall_vector 2022-08-12 11:28:21 +02:00
acenv.h ACPICA: Avoid cache flush inside virtual machines 2022-04-07 08:27:54 -07:00
acpi.h x86/mce, cper: Pass x86 CPER through the MCA handling chain 2020-11-21 12:05:41 +01:00
acrn.h x86/acrn: Set up timekeeping 2022-08-04 11:11:59 +02:00
agp.h x86: Fix various typos in comments, take #2 2021-03-21 23:50:28 +01:00
alternative.h x86: Undo return-thunk damage 2022-06-27 10:33:58 +02:00
amd_hsmp.h platform/x86: Add AMD system management interface 2022-03-02 11:42:36 +01:00
amd_nb.h x86/amd_nb: Unexport amd_cache_northbridges() 2022-04-05 19:22:27 +02:00
amd-ibs.h perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions 2022-09-29 12:20:54 +02:00
apic.h profile: setup_profiling_timer() is moslty not implemented 2022-07-29 18:12:36 -07:00
apicdef.h KVM: x86: lapic: Rename [GET/SET]_APIC_DEST_FIELD to [GET/SET]_XAPIC_DEST_FIELD 2022-06-24 12:44:34 -04:00
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 random: handle archrandom with multiple longs 2022-07-25 13:26:14 +02:00
asm-offsets.h
asm-prototypes.h x86/retpoline: Move the retpoline thunk declarations to nospec-branch.h 2021-10-28 23:25:27 +02:00
asm.h x86/extable: Prefer local labels in .set directives 2022-04-07 11:27:02 +02:00
atomic.h locking/atomic: make ARCH_ATOMIC a Kconfig symbol 2021-05-26 13:20:49 +02:00
atomic64_32.h locking/atomics: Flip fallbacks and instrumentation 2020-06-11 08:03:24 +02:00
atomic64_64.h asm-generic/atomic: Add try_cmpxchg() fallbacks 2020-10-12 18:27:27 +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/barriers, kcsan: Use generic instrumentation for non-smp barriers 2021-12-09 16:42:28 -08:00
bios_ebda.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bitops.h x86/asm/bitops: Use __builtin_ctzl() to evaluate constant expressions 2022-09-20 15:35:37 +02:00
boot.h x86: Add support for ZSTD compressed kernel 2020-07-31 11:49:09 +02:00
bootparam_utils.h x86/boot: Add a pointer to Confidential Computing blob in bootparams 2022-04-07 16:47:11 +02:00
bug.h - Remove all the code around GS switching on 32-bit now that it is not 2022-05-23 18:42:07 -07:00
bugs.h x86/mpx: remove MPX from arch/x86 2020-01-23 10:41:20 -08:00
cache.h treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
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/AMD: Save AMD NodeId as cpu_die_id 2020-11-19 11:43:13 +01:00
ce4100.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cfi.h x86: Add support for CONFIG_CFI_CLANG 2022-09-26 10:13:16 -07:00
checksum_32.h i386: propagate the calling conventions change down to csum_partial_copy_generic() 2020-08-20 15:45:18 -04:00
checksum_64.h amd64: switch csum_partial_copy_generic() to new calling conventions 2020-08-20 15:45:22 -04:00
checksum.h x86: kasan: kmsan: support CONFIG_GENERIC_CSUM on x86, enable it for KASAN/KMSAN 2022-10-03 14:03:24 -07:00
clocksource.h x86: Introduce asm/vdso/clocksource.h 2020-03-21 15:23:54 +01:00
cmdline.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cmpxchg_32.h locking/atomic/x86: Introduce arch_try_cmpxchg64 2022-05-18 00:08:28 +02:00
cmpxchg_64.h locking/atomic/x86: Introduce arch_try_cmpxchg64 2022-05-18 00:08:28 +02:00
cmpxchg.h x86: Fix various typos in comments 2021-03-18 15:31:53 +01:00
coco.h x86/coco: Add API to handle encryption mask 2022-02-23 19:14:29 +01:00
compat.h RISC-V Patches for the 5.19 Merge Window, Part 1 2022-05-31 14:10:54 -07: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 task_stack, x86/cea: Force-inline stack helpers 2022-04-04 10:13:07 +02:00
cpu.h x86/apic: Don't disable x2APIC if locked 2022-08-31 14:34:11 -07:00
cpufeature.h asm goto: eradicate CC_HAS_ASM_GOTO 2022-08-21 10:06:28 -07:00
cpufeatures.h x86/tsx: Add a feature bit for TSX control MSR support 2022-11-21 14:08:20 +01:00
cpuid.h KVM: x86: Move lookup of indexed CPUID leafs to helper 2022-04-07 16:47:11 +02:00
cpuidle_haltpoll.h cpuidle-haltpoll: vcpu hotplug support 2019-09-03 09:36:36 +02:00
cpumask.h cpumask: Add a x86-specific cpumask_clear_cpu() helper 2022-02-12 18:20:05 +01:00
crash.h x86/crash: Remove crash_reserve_low_1M() 2021-06-07 12:14:45 +02:00
current.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
debugreg.h x86/debug: Remove aout_dump_debugregs() 2020-09-04 15:12:55 +02:00
delay.h x86/delay: Introduce TPAUSE delay 2020-05-07 16:06:20 +02:00
desc_defs.h x86/idt: Make IDT init functions static inlines 2020-09-07 22:44:43 +02:00
desc.h Merge branch 'akpm' (patches from Andrew) 2021-07-02 12:08:10 -07:00
device.h x86: Remove dev->archdata.iommu pointer 2020-06-30 11:59:48 +02:00
disabled-features.h x86/retbleed: Add fine grained Kconfig knobs 2022-06-29 17:43:41 +02:00
div64.h sched/cputime: Improve cputime_adjust() 2020-06-15 14:10:00 +02:00
dma-mapping.h x86: remove cruft from <asm/dma-mapping.h> 2022-04-18 07:21:14 +02:00
dma.h PCI: Move isa_dma_bridge_buggy out of asm/dma.h 2022-07-22 17:24:47 -05: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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
efi.h EFI updates for v5.20 2022-08-03 14:38:02 -07:00
elf.h x86/32: Simplify ELF_CORE_COPY_REGS 2022-04-12 15:42:59 +02:00
elfcore-compat.h [amd64] clean PRSTATUS_SIZE/SET_PR_FPVALID up properly 2021-01-06 08:40:56 -05:00
emergency-restart.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
emulate_prefix.h x86: xen: kvm: Gather the definition of emulate prefixes 2019-10-17 21:31:57 +02:00
enclu.h x86/vdso: Implement a vDSO for Intel SGX enclave call 2020-11-18 18:02:50 +01:00
entry-common.h entry: Rename arch_check_user_regs() to arch_enter_from_user_mode() 2022-05-09 11:33:38 +02:00
espfix.h init: Invoke init_espfix_bsp() from mm_init() 2017-12-22 20:13:05 +01:00
exec.h
extable_fixup_types.h x86: simplify load_unaligned_zeropad() implementation 2022-08-16 11:03:38 -07:00
extable.h x86/extable: Annotate ex_handler_msr_mce() as a dead end 2022-05-27 12:34:45 +02:00
fb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fixmap.h x86/platform/intel-mid: Remove unused leftovers (vRTC) 2021-02-09 15:28:37 +01:00
floppy.h floppy: remove redundant assignment to variable st 2021-04-20 08:59:03 -06:00
frame.h x86/unwind/fp: Fix FP unwinding in ret_from_fork 2020-09-18 09:59:40 +02:00
fsgsbase.h x86/fsgsbase: Replace static_cpu_has() with boot_cpu_has() 2020-08-24 18:18:32 +02:00
ftrace.h x86/ftrace: Remove unused modifying_ftrace_code declaration 2022-09-26 13:20:35 -04:00
futex.h x86/futex: Remove .fixup usage 2021-12-11 09:09:47 +01:00
gart.h x86: remove the IOMMU table infrastructure 2022-04-18 07:21:10 +02:00
GEN-for-each-reg.h x86/asm: Fix register order 2021-10-28 23:25:26 +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 mm/usercopy: Check kmap addresses properly 2022-04-13 12:15:50 -07:00
hpet.h x86/hpet: Move MSI support into hpet.c 2020-10-28 20:26:25 +01: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: Optimize constant number of breakpoint slots 2022-08-30 10:56:22 +02:00
hw_irq.h iommu/amd: Fix IOMMU interrupt generation in X2APIC mode 2020-11-18 20:55:59 +01:00
hyperv-tlfs.h x86/hyperv: Update 'struct hv_enlightened_vmcs' definition 2022-09-26 12:02:37 -04: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: Avoid magic number with ELCR register accesses 2021-08-10 23:31:43 +02:00
ia32_unistd.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ia32.h x86: Fix misspelled Kconfig symbols 2021-10-05 21:48:30 +02:00
ibt.h x86/ibt, objtool: Add IBT_NOSEAL() 2022-08-19 04:05:42 -04:00
idtentry.h x86/traps: Add #VE support for TDX guest 2022-04-07 08:27:51 -07:00
imr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
inat_types.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
inat.h x86/insn: Add a __ignore_sync_check__ marker 2021-03-15 11:00:57 +01:00
init.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
insn-eval.h - Get rid of all the .fixup sections because this generates 2022-01-12 16:31:19 -08:00
insn.h x86/insn: Add AVX512-FP16 instructions to the x86 instruction decoder 2022-01-23 20:38:01 +01:00
inst.h x86/asm: Drop unused RDPID macro 2020-11-26 12:58:56 +01:00
intel_ds.h perf/x86/intel: Enable PEBS format 5 2022-02-02 13:11:43 +01:00
intel_pconfig.h x86: Fix various typos in comments 2021-03-18 15:31:53 +01:00
intel_pt.h perf/x86/intel/pt: Add a capability and config bit for disabling TNTs 2022-02-15 17:47:11 +01:00
intel_punit_ipc.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
intel_scu_ipc.h x86/platform/intel-mid: Get rid of intel_scu_ipc_legacy.h 2021-02-15 20:10:30 +01:00
intel_telemetry.h platform/x86: intel_pmc_ipc: Convert to MFD 2020-04-24 11:18:44 +01:00
intel-family.h x86/cpu: Add several Intel server CPU model numbers 2022-11-04 21:12:22 +01:00
intel-mid.h x86/platform/intel-mid: Update Copyright year and drop file names 2021-02-15 20:10:30 +01:00
invpcid.h x86/cpu: Use INVPCID mnemonic in invpcid.h 2020-05-12 16:05:30 +02:00
io_apic.h x86/ioapic: Handle Extended Destination ID field in RTE 2020-10-28 20:26:28 +01:00
io_bitmap.h x86/ioperm: Fix io bitmap invalidation on Xen PV 2020-07-18 12:31:49 +02:00
io.h arch/*/: remove CONFIG_VIRT_TO_BUS 2022-06-28 13:20:21 +02:00
iomap.h io-mapping: Cleanup atomic iomap 2020-11-06 23:14:58 +01:00
iommu.h iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check() 2022-10-21 10:49:35 +02:00
iosf_mbi.h media: atomisp: move CCK endpoint address to generic header 2020-07-18 07:17:16 +02:00
irq_remapping.h x86: Kill all traces of irq_remapping_get_irq_domain() 2020-10-28 20:26:28 +01:00
irq_stack.h asm-generic: Conditionally enable do_softirq_own_stack() via Kconfig. 2022-09-05 17:20:55 +02:00
irq_vectors.h x86/irq: Add and use NR_EXTERNAL_VECTORS and NR_SYSTEM_VECTORS 2021-05-21 12:36:44 +02:00
irq_work.h x86/entry: Convert various system vectors 2020-06-11 15:15:14 +02:00
irq.h Rework of the X86 irq stack handling: 2021-02-24 16:32:23 -08:00
irqdomain.h x86/apic: Add select() method on vector irqdomain 2020-10-28 20:26:27 +01:00
irqflags.h x86/entry: Convert SWAPGS to swapgs and remove the definition of SWAPGS 2022-05-03 12:26:08 +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 objtool: Make jump label hack optional 2022-04-22 12:32:04 +02:00
kasan.h kasan: clean up KASAN_SHADOW_SCALE_SHIFT usage 2018-02-06 18:32:43 -08:00
kaslr.h x86/mm: simplify init_trampoline() and surrounding logic 2020-06-09 09:39:13 -07:00
kbdleds.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Kbuild x86/syscalls: Switch to generic syscalltbl.sh 2021-05-20 15:03:58 +02: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 kexec: drop weak attribute from functions 2022-07-15 12:21:16 -04:00
kfence.h kfence, x86: only define helpers if !MODULE 2021-07-30 17:09:01 +02:00
kgdb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kmsan.h x86: kmsan: handle CPU entry area 2022-10-03 14:03:26 -07:00
kprobes.h x86/kprobes: Remove unused arch_kprobe_override_function() declaration 2022-09-26 13:20:52 -04:00
kvm_host.h KVM: x86/pmu: Limit the maximum number of supported AMD GP counters 2022-11-09 12:26:54 -05:00
kvm_page_track.h KVM: x86/mmu: Propagate memslot const qualifier 2021-12-08 04:24:43 -05:00
kvm_para.h x86/tdx: Wire up KVM hypercalls 2022-04-07 08:27:52 -07: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
kvm-x86-ops.h KVM: x86: Rename kvm_x86_ops.queue_exception to inject_exception 2022-09-26 12:03:07 -04:00
kvm-x86-pmu-ops.h KVM: x86/pmu: Drop amd_event_mapping[] in the KVM context 2022-06-08 04:49:06 -04:00
kvmclock.h x86/kvmclock: Move this_cpu_pvti into kvmclock.h 2021-09-30 04:08:01 -04:00
linkage.h x86: Add types to indirectly called assembly functions 2022-09-26 10:13:15 -07:00
local.h x86/asm: 'Simplify' GEN_*_RMWcc() macros 2018-10-16 17:33:54 +02:00
mach_timer.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mach_traps.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
math_emu.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mc146818rtc.h x86/rtc: Rename mach_set_rtc_mmss() to mach_set_cmos_time() 2022-08-14 11:24:29 +02:00
mce.h EDAC/i10nm: Add driver decoder for Ice Lake and Tremont CPUs 2022-09-08 11:40:01 -07:00
mem_encrypt.h x86/mm: move protection_map[] inside the platform 2022-07-17 17:14:38 -07:00
memtype.h x86/mm: Move pgprot2cachemode out of line 2020-04-20 12:39:17 +02:00
microcode_amd.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
microcode_intel.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
microcode.h x86/microcode/AMD: Track patch allocation size explicitly 2022-09-23 13:46:26 +02:00
misc.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmconfig.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmu_context.h x86/32: Remove lazy GS macros 2022-04-14 14:09:43 +02:00
mmu.h x86/mm: Convert mmu context ia32_compat into a proper flags field 2020-10-26 13:46:47 +01:00
mmzone_32.h x86/mm: Drop deprecated DISCONTIGMEM support for 32-bit 2020-05-28 18:34:30 +02:00
mmzone_64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmzone.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
module.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
mpspec_def.h x86: Introduce and use MP IRQ trigger and polarity defines 2018-01-14 21:11:54 +01:00
mpspec.h x86/init: Remove unused init ops 2020-09-16 16:52:28 +02:00
mshyperv.h x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM 2022-06-15 18:27:40 +00:00
msi.h x86/msi: Fix msi message data shadow struct 2022-04-07 15:19:32 +02:00
msr-index.h x86/cpu: Restore AMD's DE_CFG MSR after resume 2022-11-15 10:15:58 -08:00
msr-trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
msr.h x86/boot: Introduce helpers for MSR reads/writes 2022-04-06 12:59:17 +02:00
mtrr.h x86/mtrr: Remove the mtrr_bp_init() stub 2021-12-22 19:50:26 +01:00
mwait.h x86: Remove vendor checks from prefer_mwait_c1_over_halt 2022-06-08 13:00:19 -07:00
nmi.h x86/nmi: Make register_nmi_handler() more robust 2022-05-17 09:25:25 +02:00
nops.h x86/asm: Use _ASM_BYTES() in <asm/nops.h> 2021-05-10 12:33:28 +02:00
nospec-branch.h x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3 2022-12-02 15:45:33 -08:00
numa_32.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
numa.h ACPI updates for 5.10-rc1 2020-10-14 11:42:04 -07:00
olpc_ofw.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
olpc.h Platform: OLPC: Move EC-specific functionality out from x86 2019-05-20 17:27:08 +03:00
orc_lookup.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
orc_types.h objtool: Fix x86 orc generation on big endian cross-compiles 2021-01-13 18:13:13 -06:00
page_32_types.h x86/build: Fix vmlinux size check on 64-bit 2020-10-29 21:54:35 +01:00
page_32.h x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
page_64_types.h x86: Increase exception stack sizes 2021-09-21 13:57:43 +02:00
page_64.h mm: kmsan: maintain KMSAN metadata for page operations 2022-10-03 14:03:20 -07:00
page_types.h x86/mm: thread pgprot_t through init_memory_mapping() 2020-04-10 15:36:21 -07:00
page.h x86: Share definition of __is_canonical_address() 2022-02-02 13:11:42 +01:00
paravirt_api_clock.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
paravirt_types.h - Ensure paravirt patching site descriptors are aligned properly so that 2022-10-04 10:03:40 -07:00
paravirt.h x86/paravirt: Ensure proper alignment 2022-09-21 12:30:16 +02:00
parport.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pc-conf-reg.h x86: Add support for 0x22/0x23 port I/O configuration space 2021-08-10 23:31:43 +02:00
pci_x86.h x86/PCI: Revert "x86/PCI: Clip only host bridge windows for E820 regions" 2022-06-17 14:24:14 -05:00
pci-direct.h PCI: Make early dump functionality generic 2018-06-29 20:06:07 -05:00
pci-functions.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci.h PCI: Remove pci_get_legacy_ide_irq() and asm-generic/pci.h 2022-07-22 17:23:45 -05:00
percpu.h x86/percpu: Remove volatile from arch_raw_cpu_ptr(). 2022-04-05 09:59:38 +02:00
perf_event_p4.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf_event.h perf/x86/amd/lbr: Detect LbrExtV2 support 2022-08-27 00:05:43 +02:00
pgalloc.h mm/thp: define default pmd_pgtable() 2021-07-01 11:06:03 -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_32.h x86/build: Fix vmlinux size check on 64-bit 2020-10-29 21:54:35 +01:00
pgtable_64_types.h x86: kmsan: pgtable: reduce vmalloc space 2022-10-03 14:03:19 -07:00
pgtable_64.h x86/pgtable: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE 2022-05-09 18:20:46 -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/mm: move protection_map[] inside the platform 2022-07-17 17:14:38 -07:00
pgtable-2level_types.h x86/mm/32: implement arch_sync_kernel_mappings() 2020-06-02 10:59:11 -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-3level_types.h x86/paravirt: Remove 32-bit support from CONFIG_PARAVIRT_XXL 2020-08-15 13:52:11 +02:00
pgtable-3level.h mm/x86: use SWP_TYPE_BITS in 3-level swap macros 2022-09-26 19:46:04 -07:00
pgtable-invert.h x86/speculation/l1tf: Exempt zeroed PTEs from inversion 2018-08-17 10:27:36 -07:00
pgtable.h mm: introduce arch_has_hw_nonleaf_pmd_young() 2022-11-30 14:49:41 -08:00
pkeys.h x86/pkeys: Remove __arch_set_user_pkey_access() declaration 2022-04-04 15:58:24 -07:00
pkru.h x86/pkey: Fix undefined behaviour with PKRU_WD_BIT 2021-12-19 22:44:34 +01:00
platform_sst_audio.h sfi: Remove framework for deprecated firmware 2021-02-15 20:09:46 +01:00
pm-trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
posix_types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
preempt.h sched/preempt: Refactor sched_dynamic_update() 2022-02-19 11:11:07 +01:00
probe_roms.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
processor-cyrix.h x86: Add support for 0x22/0x23 port I/O configuration space 2021-08-10 23:31:43 +02: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 kernel: exit: cleanup release_thread() 2022-09-11 21:55:07 -07:00
prom.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
proto.h - Serious sanitization and cleanup of the whole APERF/MPERF and 2022-05-23 18:17:09 -07:00
pti.h x86: Use the correct SPDX License Identifier in headers 2019-10-01 20:31:35 +02:00
ptrace.h x86/sev: Mark the code returning to user space as syscall gap 2022-05-19 10:56:46 +02:00
purgatory.h x86/kdump: Remove the backup region handling 2019-11-14 18:24:43 +01:00
pvclock-abi.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pvclock.h x86/vdso: Switch to generic vDSO implementation 2019-06-22 21:21:10 +02:00
qrwlock.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
qspinlock_paravirt.h locking: Fix qspinlock/x86 inline asm error 2022-11-16 10:18:09 +01:00
qspinlock.h x86/qspinlock, kcsan: Instrument barrier of pv_queued_spin_unlock() 2021-12-09 16:42:28 -08:00
realmode.h x86/boot: Add a trampoline for booting APs via firmware handoff 2022-04-07 08:27:52 -07:00
reboot_fixups.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
reboot.h x86/headers: Fix -Wmissing-prototypes warning 2018-11-23 07:59:59 +01:00
required-features.h x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
resctrl.h x86/resctrl: Rename and change the units of resctrl_cqm_threshold 2022-09-23 14:23:41 +02:00
rmwcc.h asm goto: eradicate CC_HAS_ASM_GOTO 2022-08-21 10:06:28 -07:00
seccomp.h x86: Enable seccomp architecture tracking 2020-11-20 11:16:34 -08:00
sections.h x86/setup: Fix static memory detection 2020-03-19 11:58:13 +01:00
segment.h x86/asm: Merge load_gs_index() 2022-04-14 14:15:54 +02:00
serial.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
set_memory.h x86/mce: relocate set{clear}_mce_nospec() functions 2022-05-16 11:46:44 -07:00
setup_arch.h
setup.h x86/xen: Use clear_bss() for Xen PV guests 2022-07-01 10:57:52 +02:00
sev-common.h x86/sev: Provide support for SNP guest request NAEs 2022-04-07 16:47:12 +02:00
sev.h x86/sev: Mark snp_abort() noreturn 2022-08-25 15:54:03 +02:00
sgx.h x86/sgx: Keep record of SGX page type 2022-07-07 10:13:02 -07:00
shmparam.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sigcontext.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sigframe.h x86/signal: Introduce helpers to get the maximum signal frame size 2021-05-19 11:46:27 +02: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 compat: make linux/compat.h available everywhere 2021-07-23 14:20:24 +01:00
simd.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
smap.h x86/cpu: Remove CONFIG_X86_SMAP and "nosmap" 2022-04-04 10:16:57 +02:00
smp.h x86/cacheinfo: Add a cpu_llc_shared_mask() UP variant 2022-09-28 18:35:37 +02:00
softirq_stack.h x86/softirq/64: Inline do_softirq_own_stack() 2021-02-10 23:34:17 +01:00
sparsemem.h x86: add missing include to sparsemem.h 2022-10-03 14:03:17 -07:00
spec-ctrl.h x86, KVM: remove unnecessary argument to x86_virt_spec_ctrl and callers 2022-11-09 12:26:51 -05:00
special_insns.h x86/fpu: Add a helper to prepare AMX state for low-power CPU idle 2022-07-19 18:46:15 +02:00
spinlock_types.h x86/spinlock: Remove obsolete ticket spinlock macros and types 2020-05-28 21:18:40 +02:00
spinlock.h Merge branch 'linus' into locking/core, to resolve conflicts 2017-11-07 10:32:44 +01:00
sta2x11.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
stackprotector.h x86: Fix leftover comment typos 2021-05-12 20:00:51 +02:00
stacktrace.h x86/mm/64: Improve stack overflow warnings 2021-09-21 13:57:43 +02:00
static_call.h x86/retbleed: Add fine grained Kconfig knobs 2022-06-29 17:43:41 +02:00
string_32.h x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
string_64.h x86: fortify: kmsan: fix KMSAN fortify builds 2022-10-28 13:37:23 -07:00
string.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
suspend_32.h x86/pm: Fix false positive kmemleak report in msr_build_context() 2022-04-27 13:55:19 +02:00
suspend_64.h x86/pm: Fix false positive kmemleak report in msr_build_context() 2022-04-27 13:55:19 +02:00
suspend.h x86, hibernate: Rename temp_level4_pgt to temp_pgt 2018-10-03 11:56:34 +02:00
svm.h KVM: SVM: Introduce logic to (de)activate x2AVIC mode 2022-06-24 12:50:35 -04:00
switch_to.h fork: Generalize PF_IO_WORKER handling 2022-05-07 09:01:59 -05:00
sync_bitops.h x86/asm: Modernize sync_bitops.h 2019-04-10 09:53:31 +02:00
sync_core.h x86/membarrier: Get rid of a dubious optimization 2020-12-09 09:37:42 +01:00
syscall_wrapper.h x86/syscall: Include asm/ptrace.h in syscall_wrapper header 2022-10-24 17:57:28 +02:00
syscall.h arch: remove unused function syscall_set_arguments() 2021-09-14 16:06:20 +02:00
syscalls.h x86: Remove unneeded includes 2020-03-21 16:03:25 +01:00
tdx.h x86/tdx: Wire up KVM hypercalls 2022-04-07 08:27:52 -07:00
text-patching.h x86/alternative: Introduce text_poke_set 2022-05-23 23:07:38 +02:00
thermal.h x86/thermal: Fix LVT thermal setup for SMI delivery mode 2021-05-31 22:32:26 +02:00
thread_info.h x86/split-lock: Remove unused TIF_SLD bit 2022-04-27 15:43:39 +02:00
time.h x86/timer: Skip PIT initialization on modern chipsets 2019-06-29 11:35:35 +02:00
timer.h Merge branch 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-11-13 19:07:38 -08:00
timex.h x86/tsc: Use fallback for random_get_entropy() instead of zero 2022-05-13 23:59:23 +02:00
tlb.h mmu_gather: Remove per arch tlb_{start,end}_vma() 2022-07-21 10:50:13 -07:00
tlbbatch.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tlbflush.h - Rename a PKRU macro to make more sense when reading the code 2022-08-01 09:34:39 -07:00
topology.h x86/aperfperf: Make it correct on 32bit and UP kernels 2022-05-02 09:19:05 +02:00
trace_clock.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
trap_pf.h x86/mm: Signal SIGSEGV with PF_SGX 2020-11-17 14:36:13 +01:00
trapnr.h x86/boot/compressed/64: Add stage1 #VC handler 2020-09-07 19:45:25 +02:00
traps.h x86/traps: Use pt_regs directly in fixup_bad_iret() 2022-05-03 11:18:59 +02:00
tsc.h x86/tsc: Use fallback for random_get_entropy() instead of zero 2022-05-13 23:59:23 +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/clear_user: Make it faster 2022-08-18 12:36:42 +02:00
uaccess.h x86: asm: make sure __put_user_size() evaluates pointer once 2022-10-28 13:37:23 -07:00
umip.h x86/Kconfig: Rename UMIP config parameter 2019-11-07 11:07:29 +01:00
unistd.h fs: stat: compat: Add __ARCH_WANT_COMPAT_STAT 2022-04-26 13:35:45 -07:00
unwind_hints.h objtool: Re-add UNWIND_HINT_{SAVE_RESTORE} 2022-06-27 10:34:00 +02:00
unwind.h x86,rethook,kprobes: Replace kretprobe with rethook on x86 2022-03-28 19:38:51 -07:00
uprobes.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
user_32.h asm/user.h: killed unused macros 2022-01-30 21:17:00 -05:00
user_64.h asm/user.h: killed unused macros 2022-01-30 21:17:00 -05:00
user.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
user32.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vdso.h x86: Remove toolchain check for X32 ABI capability 2022-03-15 10:32:48 +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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vgtod.h um: Fix header inclusion 2020-03-23 18:45:14 +01:00
virtext.h KVM: VMX: Use the kernel's version of VMXOFF 2021-02-04 05:27:33 -05:00
vm86.h x86/vm86/32: Remove VM86_SCREEN_BITMAP support 2021-01-21 20:08:53 +01:00
vmalloc.h mm/vmalloc: provide fallback arch huge vmap support functions 2021-04-30 11:20:40 -07:00
vmware.h x86/cpu/vmware: Fix platform detection VMWARE_PORT macro 2019-10-22 00:51:44 +02:00
vmx.h kvm: vmx: keep constant definition format consistent 2022-09-30 07:11:17 -04:00
vmxfeatures.h KVM: VMX: Enable Notify VM exit 2022-06-08 05:56:24 -04: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: simplify load_unaligned_zeropad() implementation 2022-08-16 11:03:38 -07:00
x86_init.h x86/mm/cpa: Generalize __set_memory_enc_pgtable() 2022-02-23 19:14:29 +01:00
xor_32.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11:00
xor_64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
xor_avx.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11:00
xor.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11:00