linux-stable/arch/x86/include/asm
Linus Torvalds f70efe54b9 work around gcc bugs with 'asm goto' with outputs
commit 68fb3ca0e4 upstream.

We've had issues with gcc and 'asm goto' before, and we created a
'asm_volatile_goto()' macro for that in the past: see commits
3f0116c323 ("compiler/gcc4: Add quirk for 'asm goto' miscompilation
bug") and a9f180345f ("compiler/gcc4: Make quirk for
asm_volatile_goto() unconditional").

Then, much later, we ended up removing the workaround in commit
43c249ea0b ("compiler-gcc.h: remove ancient workaround for gcc PR
58670") because we no longer supported building the kernel with the
affected gcc versions, but we left the macro uses around.

Now, Sean Christopherson reports a new version of a very similar
problem, which is fixed by re-applying that ancient workaround.  But the
problem in question is limited to only the 'asm goto with outputs'
cases, so instead of re-introducing the old workaround as-is, let's
rename and limit the workaround to just that much less common case.

It looks like there are at least two separate issues that all hit in
this area:

 (a) some versions of gcc don't mark the asm goto as 'volatile' when it
     has outputs:

        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98619
        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110420

     which is easy to work around by just adding the 'volatile' by hand.

 (b) Internal compiler errors:

        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110422

     which are worked around by adding the extra empty 'asm' as a
     barrier, as in the original workaround.

but the problem Sean sees may be a third thing since it involves bad
code generation (not an ICE) even with the manually added 'volatile'.

The same old workaround works for this case, even if this feels a
bit like voodoo programming and may only be hiding the issue.

Reported-and-tested-by: Sean Christopherson <seanjc@google.com>
Link: https://lore.kernel.org/all/20240208220604.140859-1-seanjc@google.com/
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: Uros Bizjak <ubizjak@gmail.com>
Cc: Jakub Jelinek <jakub@redhat.com>
Cc: Andrew Pinski <quic_apinski@quicinc.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-02-23 09:12:28 +01: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: Allow caller to constrain xfeatures when copying to uabi buffer 2023-10-25 12:03:04 +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 acpi: Fix suspend with Xen PV 2023-02-01 08:34:50 +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-ibs.h perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions 2022-09-29 12:20:54 +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
apic.h x86/apic: Handle no CONFIG_X86_X2APIC on systems with x2APIC enabled by BIOS 2022-12-31 13:32:58 +01: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
arch_hweight.h
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
atomic64_64.h
audit.h
barrier.h x86/barriers, kcsan: Use generic instrumentation for non-smp barriers 2021-12-09 16:42:28 -08:00
bios_ebda.h
bitops.h x86/asm/bitops: Use __builtin_ctzl() to evaluate constant expressions 2022-09-20 15:35:37 +02:00
boot.h x86/boot/compressed: Reserve more memory for page tables 2023-09-23 11:11: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/cpu: Switch to arch_cpu_finalize_init() 2023-08-08 20:03:46 +02:00
cache.h treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
cacheflush.h
cacheinfo.h x86/CPU/AMD: Save AMD NodeId as cpu_die_id 2020-11-19 11:43:13 +01:00
ce4100.h
cfi.h x86: Add support for CONFIG_CFI_CLANG 2022-09-26 10:13:16 -07: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
checksum_32.h
checksum_64.h
clocksource.h
cmdline.h
cmpxchg.h x86: Fix various typos in comments 2021-03-18 15:31:53 +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
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.h x86/smp: Make stop_other_cpus() more robust 2023-07-01 13:16:23 +02:00
cpu_device_id.h
cpu_entry_area.h task_stack, x86/cea: Force-inline stack helpers 2022-04-04 10:13:07 +02:00
cpufeature.h work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:12:28 +01:00
cpufeatures.h x86/CPU/AMD: Do not leak quotient data after a division by 0 2023-08-11 12:08:27 +02:00
cpuid.h KVM: x86: Move lookup of indexed CPUID leafs to helper 2022-04-07 16:47:11 +02:00
cpuidle_haltpoll.h
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
debugreg.h x86/debug: Fix stack recursion caused by wrongly ordered DR7 accesses 2023-02-09 11:28:21 +01:00
delay.h
desc.h Merge branch 'akpm' (patches from Andrew) 2021-07-02 12:08:10 -07:00
desc_defs.h
device.h
disabled-features.h x86/cpu, kvm: Add support for CPUID_80000021_EAX 2023-08-08 20:03:50 +02:00
div64.h
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
doublefault.h
dwarf2.h
edac.h
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
emulate_prefix.h
enclu.h x86/vdso: Implement a vDSO for Intel SGX enclave call 2020-11-18 18:02:50 +01:00
entry-common.h x86/CPU/AMD: Fix the DIV(0) initial fix attempt 2023-08-26 13:27:00 +02:00
espfix.h
exec.h
extable.h x86/extable: Annotate ex_handler_msr_mce() as a dead end 2022-05-27 12:34:45 +02:00
extable_fixup_types.h x86: simplify load_unaligned_zeropad() implementation 2022-08-16 11:03:38 -07:00
fb.h
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
fsgsbase.h
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
hardirq.h
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
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: KVM: Rename "hv_enlightenments" to "hv_vmcb_enlightenments" 2023-04-20 12:35:12 +02:00
hypervisor.h
i8259.h x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility 2023-11-02 09:35:31 +01:00
ia32.h x86/coco: Disable 32-bit emulation by default on TDX and SEV 2023-12-13 18:39:04 +01:00
ia32_unistd.h
ibt.h x86/ibt, objtool: Add IBT_NOSEAL() 2022-08-19 04:05:42 -04:00
idtentry.h x86/entry: Convert INT 0x80 emulation to IDTENTRY 2023-12-13 18:39:05 +01:00
imr.h
inat.h x86/insn: Add a __ignore_sync_check__ marker 2021-03-15 11:00:57 +01:00
inat_types.h
init.h
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-family.h x86/cpu: Add model number for Intel Arrow Lake mobile processor 2023-11-02 09:35:32 +01:00
intel-mid.h x86/platform/intel-mid: Update Copyright year and drop file names 2021-02-15 20:10:30 +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
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
invpcid.h
io.h arch/*/: remove CONFIG_VIRT_TO_BUS 2022-06-28 13:20:21 +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
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
irq.h Rework of the X86 irq stack handling: 2021-02-24 16:32:23 -08: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 arch: consolidate arch_irq_work_raise prototypes 2024-02-05 20:12:49 +00: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
jailhouse_para.h
jump_label.h work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:12:28 +01:00
kasan.h
kaslr.h
kbdleds.h
Kbuild x86/syscalls: Switch to generic syscalltbl.sh 2021-05-20 15:03:58 +02:00
kdebug.h
kexec-bzimage64.h
kexec.h x86/reboot: VMCLEAR active VMCSes before emergency reboot 2023-10-06 14:56:50 +02:00
kfence.h kfence, x86: only define helpers if !MODULE 2021-07-30 17:09:01 +02:00
kgdb.h
kmsan.h mm, kmsan: fix infinite recursion due to RCU critical section 2024-02-05 20:13:02 +00:00
kprobes.h x86/kprobes: Remove unused arch_kprobe_override_function() declaration 2022-09-26 13:20:52 -04:00
kvm-x86-ops.h KVM: x86: Fix lapic timer interrupt lost after loading a snapshot. 2023-12-08 08:51:18 +01: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
kvm_host.h KVM: x86: Fix lapic timer interrupt lost after loading a snapshot. 2023-12-08 08:51:18 +01: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_vcpu_regs.h
kvmclock.h x86/kvmclock: Move this_cpu_pvti into kvmclock.h 2021-09-30 04:08:01 -04:00
linkage.h x86/ibt: Suppress spurious ENDBR 2023-09-23 11:11:09 +02:00
local.h
mach_timer.h
mach_traps.h
math_emu.h
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/sev: Make enc_dec_hypercall() accept a size instead of npages 2023-09-13 09:43:03 +02:00
memtype.h
microcode.h x86/cpu/amd: Add a Zenbleed fix 2023-07-24 18:55:35 +02:00
microcode_amd.h x86/cpu/amd: Add a Zenbleed fix 2023-07-24 18:55:35 +02:00
microcode_intel.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
misc.h
mmconfig.h
mmu.h x86/mm: Convert mmu context ia32_compat into a proper flags field 2020-10-26 13:46:47 +01:00
mmu_context.h x86/32: Remove lazy GS macros 2022-04-14 14:09:43 +02:00
mmzone.h
mmzone_32.h
mmzone_64.h
module.h
mpspec.h
mpspec_def.h
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 KVM: x86: Ignore MSR_AMD64_TW_CFG access 2023-11-28 17:07:08 +00:00
msr-trace.h
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/cpu: Cleanup the untrain mess 2023-08-26 13:26:59 +02:00
numa.h x86/mm: Drop the 4 MB restriction on minimal NUMA node memory size 2023-11-28 17:06:55 +00:00
numa_32.h
olpc.h
olpc_ofw.h
orc_lookup.h
orc_types.h objtool: Fix x86 orc generation on big endian cross-compiles 2021-01-13 18:13:13 -06:00
page.h x86: Share definition of __is_canonical_address() 2022-02-02 13:11:42 +01:00
page_32.h x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
page_32_types.h x86/build: Fix vmlinux size check on 64-bit 2020-10-29 21:54:35 +01:00
page_64.h mm: kmsan: maintain KMSAN metadata for page operations 2022-10-03 14:03:20 -07:00
page_64_types.h x86: Increase exception stack sizes 2021-09-21 13:57:43 +02:00
page_types.h
paravirt.h x86/paravirt: Ensure proper alignment 2022-09-21 12:30:16 +02: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
parport.h
pc-conf-reg.h x86: Add support for 0x22/0x23 port I/O configuration space 2021-08-10 23:31:43 +02:00
pci-direct.h
pci-functions.h
pci.h PCI: Remove pci_get_legacy_ide_irq() and asm-generic/pci.h 2022-07-22 17:23:45 -05: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
percpu.h x86/percpu: Remove volatile from arch_raw_cpu_ptr(). 2022-04-05 09:59:38 +02:00
perf_event.h perf/ibs: Fix interface via core pmu events 2023-07-19 16:21:02 +02:00
perf_event_p4.h
pgalloc.h mm/thp: define default pmd_pgtable() 2021-07-01 11:06:03 -07:00
pgtable-2level.h
pgtable-2level_types.h
pgtable-3level.h mm/x86: use SWP_TYPE_BITS in 3-level swap macros 2022-09-26 19:46:04 -07:00
pgtable-3level_types.h
pgtable-invert.h
pgtable.h mm: introduce arch_has_hw_nonleaf_pmd_young() 2022-11-30 14:49:41 -08:00
pgtable_32.h x86/build: Fix vmlinux size check on 64-bit 2020-10-29 21:54:35 +01:00
pgtable_32_areas.h
pgtable_32_types.h
pgtable_64.h x86/mm: Fix __swp_entry_to_pte() for Xen PV guests 2023-07-19 16:21:02 +02:00
pgtable_64_types.h x86: kmsan: pgtable: reduce vmalloc space 2022-10-03 14:03:19 -07:00
pgtable_areas.h
pgtable_types.h x86/mm: Fix PAT bit missing from page protection modify mask 2023-09-13 09:42:40 +02: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
posix_types.h
preempt.h sched/preempt: Refactor sched_dynamic_update() 2022-02-19 11:11:07 +01:00
probe_roms.h
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
processor.h x86: Move gds_ucode_mitigated() declaration to header 2023-08-16 18:27:25 +02:00
prom.h
proto.h x86/entry: Convert INT 0x80 emulation to IDTENTRY 2023-12-13 18:39:05 +01:00
pti.h
ptrace.h x86/sev: Mark the code returning to user space as syscall gap 2022-05-19 10:56:46 +02:00
purgatory.h
pvclock-abi.h
pvclock.h
qrwlock.h
qspinlock.h x86/qspinlock, kcsan: Instrument barrier of pv_queued_spin_unlock() 2021-12-09 16:42:28 -08:00
qspinlock_paravirt.h locking: Fix qspinlock/x86 inline asm error 2022-11-16 10:18:09 +01:00
realmode.h x86/boot: Skip realmode init code when running as Xen PV guest 2022-12-31 13:32:16 +01:00
reboot.h x86/reboot: VMCLEAR active VMCSes before emergency reboot 2023-10-06 14:56:50 +02:00
reboot_fixups.h
required-features.h x86/cpu, kvm: Add support for CPUID_80000021_EAX 2023-08-08 20:03:50 +02:00
resctrl.h x86/resctl: fix scheduler confusion with 'current' 2023-03-11 13:55:41 +01:00
rmwcc.h work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:12:28 +01:00
seccomp.h x86: Enable seccomp architecture tracking 2020-11-20 11:16:34 -08:00
sections.h lockdep: fix static memory detection even more 2023-09-02 09:16:19 +02:00
segment.h x86/asm: Merge load_gs_index() 2022-04-14 14:15:54 +02:00
serial.h
set_memory.h x86/mce: relocate set{clear}_mce_nospec() functions 2022-05-16 11:46:44 -07:00
setup.h x86/xen: Use clear_bss() for Xen PV guests 2022-07-01 10:57:52 +02:00
setup_arch.h
sev-common.h x86/sev: Change snp_guest_issue_request()'s fw_err argument 2023-11-20 11:52:13 +01:00
sev.h x86/sev: Change snp_guest_issue_request()'s fw_err argument 2023-11-20 11:52:13 +01:00
sgx.h x86/sgx: Keep record of SGX page type 2022-07-07 10:13:02 -07:00
shmparam.h
sigcontext.h
sigframe.h x86/init: Initialize signal frame size late 2023-08-08 20:03:47 +02:00
sighandling.h
signal.h compat: make linux/compat.h available everywhere 2021-07-23 14:20:24 +01:00
simd.h
smap.h x86/cpu: Remove CONFIG_X86_SMAP and "nosmap" 2022-04-04 10:16:57 +02:00
smp.h x86/smp: Cure kexec() vs. mwait_play_dead() breakage 2023-07-01 13:16:23 +02:00
softirq_stack.h x86/softirq/64: Inline do_softirq_own_stack() 2021-02-10 23:34:17 +01:00
sparsemem.h x86/numa: Introduce numa_fill_memblks() 2023-11-20 11:51:50 +01: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 cpuidle, intel_idle: Fix CPUIDLE_FLAG_INIT_XSTATE 2023-03-10 09:33:47 +01:00
spinlock.h
spinlock_types.h
sta2x11.h
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.h
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
suspend.h
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
svm.h x86: KVM: SVM: add support for Invalid IPI Vector interception 2023-10-25 12:03:04 +02:00
switch_to.h fork: Generalize PF_IO_WORKER handling 2022-05-07 09:01:59 -05:00
sync_bitops.h
sync_core.h x86/membarrier: Get rid of a dubious optimization 2020-12-09 09:37:42 +01:00
syscall.h arch: remove unused function syscall_set_arguments() 2021-09-14 16:06:20 +02:00
syscall_wrapper.h x86/entry/ia32: Ensure s32 is sign extended to s64 2024-01-31 16:17:12 -08:00
syscalls.h
tdx.h x86/tdx: Wire up KVM hypercalls 2022-04-07 08:27:52 -07:00
text-patching.h x86/alternatives: Introduce int3_emulate_jcc() 2023-02-25 11:25:41 +01: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
timer.h
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
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
trap_pf.h x86/mm: Signal SIGSEGV with PF_SGX 2020-11-17 14:36:13 +01:00
trapnr.h
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.h work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:12:28 +01:00
uaccess_32.h
uaccess_64.h x86/clear_user: Make it faster 2022-08-18 12:36:42 +02:00
umip.h
unistd.h fs: stat: compat: Add __ARCH_WANT_COMPAT_STAT 2022-04-26 13:35:45 -07:00
unwind.h x86,rethook,kprobes: Replace kretprobe with rethook on x86 2022-03-28 19:38:51 -07:00
unwind_hints.h objtool: Re-add UNWIND_HINT_{SAVE_RESTORE} 2022-06-27 10:34:00 +02:00
uprobes.h
user.h
user32.h
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
vdso.h x86: Remove toolchain check for X32 ABI capability 2022-03-15 10:32:48 +01:00
vermagic.h
vga.h
vgtod.h
virtext.h work around gcc bugs with 'asm goto' with outputs 2024-02-23 09:12:28 +01: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
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
vvar.h
word-at-a-time.h x86: simplify load_unaligned_zeropad() implementation 2022-08-16 11:03:38 -07:00
x86_init.h x86/mm: Allow guest.enc_status_change_prepare() to fail 2023-07-19 16:21:00 +02:00
xor.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11: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
xor_avx.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11:00