linux/arch/x86/include/asm
Roman Kisel 3d12349ade x86/hyperv: Fix APIC ID and VP index confusion in hv_snp_boot_ap()
[ Upstream commit 86c48271e0 ]

To start an application processor in SNP-isolated guest, a hypercall
is used that takes a virtual processor index. The hv_snp_boot_ap()
function uses that START_VP hypercall but passes as VP index to it
what it receives as a wakeup_secondary_cpu_64 callback: the APIC ID.

As those two aren't generally interchangeable, that may lead to hung
APs if the VP index and the APIC ID don't match up.

Update the parameter names to avoid confusion as to what the parameter
is. Use the APIC ID to the VP index conversion to provide the correct
input to the hypercall.

Cc: stable@vger.kernel.org
Fixes: 44676bb9d5 ("x86/hyperv: Add smp support for SEV-SNP guest")
Signed-off-by: Roman Kisel <romank@linux.microsoft.com>
Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Link: https://lore.kernel.org/r/20250507182227.7421-2-romank@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Message-ID: <20250507182227.7421-2-romank@linux.microsoft.com>
[ changed HVCALL_GET_VP_INDEX_FROM_APIC_ID to HVCALL_GET_VP_ID_FROM_APIC_ID ]
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-08-01 09:48:46 +01:00
..
e820 x86/e820: Add a new e820 table update helper 2024-04-29 11:15:31 +02:00
fpu Updates for x86 memory management: 2024-09-17 15:03:01 +02:00
numachip x86/numachip: Introduce Numachip2 timer mechanisms 2015-09-22 22:25:33 +02:00
shared x86/tdx: Dynamically disable SEPT violations from causing #VEs 2024-12-05 14:02:11 +01:00
trace x86/fpu: Convert tracing to fpstate 2021-10-20 22:35:04 +02:00
uv x86/platform/uv: Remove unused declaration uv_irq_2_mmr_info() 2024-08-14 12:49:35 +02:00
vdso random: vDSO: add __arch_get_k_vdso_rng_data() helper for data page access 2024-09-13 17:28:35 +02:00
xen x86/xen: remove hypercall page 2024-12-19 18:13:24 +01:00
acenv.h ACPICA: Avoid cache flush inside virtual machines 2022-04-07 08:27:54 -07:00
acpi.h xen: allow mapping ACPI data using a different physical address 2024-09-12 08:25:07 +02:00
acrn.h x86/acrn: Set up timekeeping 2022-08-04 11:11:59 +02:00
agp.h char/agp: consolidate {alloc,free}_gatt_pages() 2023-02-13 22:13:12 +01:00
alternative.h x86/its: FineIBT-paranoid vs ITS 2025-05-18 08:25:00 +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: Fix compile-testing without CONFIG_AMD_NB 2024-10-29 18:16:05 +01:00
apic.h x86/apic: Remove unused extern declarations 2024-08-13 12:00:09 +02:00
apicdef.h x86/apic: Drop struct local_apic 2023-11-21 17:23:35 +01: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 kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
asm-prototypes.h x86/stackprotector: Work around strict Clang TLS symbol requirements 2024-11-08 13:16:00 +01:00
asm.h x86/extable: Remove unused fixup type EX_TYPE_COPY 2024-04-04 17:01:40 +02:00
atomic.h locking/atomic/x86: Define arch_atomic_sub() family using arch_atomic_add() functions 2024-04-10 15:04:55 +02:00
atomic64_32.h locking/atomic/x86: Use ALT_OUTPUT_SP() for __alternative_atomic64() 2024-12-05 14:01:22 +01:00
atomic64_64.h locking/atomic/x86: Define arch_atomic_sub() family using arch_atomic_add() functions 2024-04-10 15:04:55 +02:00
audit.h x86/audit: Fix -Wmissing-variable-declarations warning for ia32_xyz_class 2023-08-30 10:11:16 +02:00
barrier.h x86: improve array_index_mask_nospec() code generation 2024-05-22 14:12:11 -07: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: improve bitop code generation with clang 2024-05-22 14:12:11 -07:00
boot.h x86/build changes for v6.10: 2024-05-13 18:05:08 -07:00
bootparam_utils.h docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06:00
bug.h x86/traps: Cleanup and robustify decode_bug() 2025-05-29 11:02:50 +02:00
bugs.h x86/cpu: Switch to arch_cpu_finalize_init() 2023-06-16 10:15:59 +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 asm-generic: don't include <linux/mm.h> in cacheflush.h 2020-06-08 11:05:57 -07:00
cacheinfo.h x86/cpu: Move cpu_l[l2]c_id into topology info 2023-10-10 14:38:18 +02: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/ibt: Handle FineIBT in handle_cfi_failure() 2025-05-29 11:02:50 +02: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 i386: propagate the calling conventions change down to csum_partial_copy_generic() 2020-08-20 15:45:18 -04:00
checksum_64.h net: checksum: drop the linux/uaccess.h include 2023-01-27 11:19:46 +00:00
clocksource.h x86: Introduce asm/vdso/clocksource.h 2020-03-21 15:23:54 +01:00
cmdline.h x86/setup: Parse the builtin command line before merging 2024-07-31 21:46:35 +02:00
cmpxchg.h locking/atomic/x86: Introduce arch_sync_try_cmpxchg() 2023-10-09 18:14:25 +02:00
cmpxchg_32.h locking/atomic/x86: Use ALT_OUTPUT_SP() for __arch_{,try_}cmpxchg64_emu() 2024-12-05 14:01:22 +01:00
cmpxchg_64.h locking/atomic/x86: Introduce arch_try_cmpxchg64_local() 2024-04-14 22:40:54 +02:00
coco.h x86/tdx: Preserve shared bit on mprotect() 2024-04-24 08:11:43 -07: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/bugs: Add a Transient Scheduler Attacks mitigation 2025-07-10 16:05:14 +02:00
cpu_device_id.h x86/cpu/vfm: Delete X86_MATCH_INTEL_FAM6_MODEL[_STEPPING]() macros 2024-09-04 18:05:49 +02:00
cpu_entry_area.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
cpufeature.h - Switch the in-place instruction patching which lead to at least one weird bug 2024-05-14 08:51:37 -07:00
cpufeatures.h x86/bugs: Add a Transient Scheduler Attacks mitigation 2025-07-10 16:05:14 +02:00
cpuid.h x86: 2024-09-28 09:20:14 -07:00
cpuidle_haltpoll.h cpuidle-haltpoll: vcpu hotplug support 2019-09-03 09:36:36 +02:00
cpumask.h x86/smpboot: Move synchronization masks to SMP boot code 2023-05-15 13:44:52 +02:00
crash.h x86/crash: Remove crash_reserve_low_1M() 2021-06-07 12:14:45 +02:00
crash_reserve.h crash: use macro to add crashk_res into iomem early for specific arch 2024-03-26 11:14:12 -07:00
current.h Merge branch 'x86/bugs' into x86/core, to pick up pending changes before dependent patches 2024-02-14 10:49:37 +01:00
debugreg.h x86/traps: Initialize DR7 by writing its architectural reset value 2025-08-01 09:48:39 +01:00
delay.h x86/delay: Introduce TPAUSE delay 2020-05-07 16:06:20 +02:00
desc.h Merge branch 'linus' into x86/boot, to resolve conflict 2024-03-12 09:55:57 +01:00
desc_defs.h x86/asm: Always set A (accessed) flag in GDT descriptors 2023-12-20 10:57:51 +01:00
device.h x86: Remove dev->archdata.iommu pointer 2020-06-30 11:59:48 +02:00
disabled-features.h x86/cpufeatures: Add new word for scattered features 2024-03-25 11:16:54 +01:00
div64.h x86/asm: Avoid unneeded __div64_32 function definition 2023-08-03 12:08:35 +02:00
dma-mapping.h dma-mapping: no need to pass a bus_type into get_arch_dma_ops() 2023-02-15 12:35:20 +01: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: Avoid missing-prototype warnings for doublefault code 2023-05-18 11:56:18 -07: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 x86/efistub: Enable SMBIOS protocol handling for x86 2024-07-08 10:17:44 +02:00
elf.h x86/vdso: Move vDSO to mmap region 2024-02-27 00:23:55 +01: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 x86/entry: Set FRED RSP0 on return to userspace instead of context switch 2024-08-25 19:23:00 +02:00
espfix.h init: Invoke init_espfix_bsp() from mm_init() 2017-12-22 20:13:05 +01:00
exec.h Disintegrate asm/system.h for X86 2012-03-28 18:11:12 +01:00
extable.h x86/extable: Remove unused declaration fixup_bug() 2024-08-25 16:07:51 +02:00
extable_fixup_types.h x86/extable: Remove unused fixup type EX_TYPE_COPY 2024-04-04 17:01:40 +02: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
fpu.h x86: implement ARCH_HAS_KERNEL_FPU_SUPPORT 2024-05-19 14:36:19 -07:00
frame.h x86/unwind/fp: Fix FP unwinding in ret_from_fork 2020-09-18 09:59:40 +02:00
fred.h x86/entry: Set FRED RSP0 on return to userspace instead of context switch 2024-08-25 19:23:00 +02:00
fsgsbase.h x86/msr: Prepare for including <linux/percpu.h> into <asm/msr.h> 2024-03-04 12:01:39 +01:00
ftrace.h x86/ftrace: Include <asm/ptrace.h> 2024-10-03 16:43:22 -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 x86, apic: merge genapic.h into apic.h 2009-02-17 17:52:43 +01:00
geode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 206 2019-05-30 11:29:53 -07:00
gsseg.h x86/gsseg: Use the LKGS instruction if available for load_gs_index() 2023-01-13 10:07:27 +01:00
hardirq.h x86/entry: Remove unwanted instrumentation in common_interrupt() 2024-08-08 17:36:35 +02: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 genirq/matrix: Dynamic bitmap allocation 2024-02-23 10:18:44 +01:00
hyperv-tlfs.h hyperv-tlfs: Change prefix of generic HV_REGISTER_* MSRs to HV_MSR_* 2024-03-04 06:59:18 +00:00
hyperv_timer.h clocksource/drivers/hyper-v: Include asm/hyperv-tlfs.h not asm/mshyperv.h 2022-11-17 13:58:32 +01: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: Skip probing when ACPI/MADT advertises PCAT compatibility 2023-10-27 20:36:49 +02:00
ia32.h x86/32: Remove unused IA32_STACK_TOP and two externs 2024-04-02 15:01:40 +02:00
ibt.h x86/traps: Cleanup and robustify decode_bug() 2025-05-29 11:02:50 +02:00
idtentry.h x86/entry: Remove unwanted instrumentation in common_interrupt() 2024-08-08 17:36:35 +02:00
imr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
inat.h x86/insn: Add support for APX EVEX to the instruction decoder logic 2024-05-02 13:13:45 +02:00
inat_types.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
init.h x86/mm: Introduce kernel_ident_mapping_free() 2024-06-17 17:46:22 +02:00
insn-eval.h x86/insn: Avoid namespace clash by separating instruction decoder MMIO type from MMIO trace type 2023-01-03 18:46:06 +01:00
insn.h x86/insn: Add support for APX EVEX to the instruction decoder logic 2024-05-02 13:13:45 +02:00
inst.h x86/asm: Drop unused RDPID macro 2020-11-26 12:58:56 +01:00
intel-family.h x86/microcode: Update the Intel processor flag scan check 2025-05-29 11:02:11 +02:00
intel-mid.h x86/platform/intel-mid: Remove unused definitions from intel-mid.h 2023-03-22 11:08:40 -07:00
intel_ds.h perf/x86/intel: Support the PEBS event mask 2024-07-04 16:00:36 +02: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_telemetry.h platform/x86: intel_scu_ipc: Move intel_scu_ipc.h out of arch/x86/include/asm 2024-09-11 14:26:03 +02:00
invpcid.h x86/cpu: Use INVPCID mnemonic in invpcid.h 2020-05-12 16:05:30 +02:00
io.h The usual shower of singleton fixes and minor series all over MM, 2024-05-19 09:21:03 -07:00
io_apic.h x86/platform/ce4100: Dont override x86_init.mpparse.setup_ioapic_ids 2024-02-15 22:07:39 +01:00
io_bitmap.h x86/ioperm: Fix io bitmap invalidation on Xen PV 2020-07-18 12:31:49 +02:00
iomap.h io-mapping: Cleanup atomic iomap 2020-11-06 23:14:58 +01:00
iommu.h iommu/amd: Don't rely on external callers to enable IOMMU SNP support 2024-01-29 17:19:28 +01:00
iosf_mbi.h arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
irq.h x86: replace CONFIG_HAVE_KVM with IS_ENABLED(CONFIG_KVM) 2024-02-08 08:45:35 -05:00
irq_remapping.h iommu/vt-d: Make posted MSI an opt-in command line option 2024-04-30 00:54:43 +02:00
irq_stack.h x86/asm: Use %c/%n instead of %P operand modifier in asm templates 2024-03-19 13:15:35 +01:00
irq_vectors.h x86/irq: Fix comment on IRQ vector layout 2024-08-13 12:00:09 +02:00
irq_work.h arch: consolidate arch_irq_work_raise prototypes 2023-11-23 11:32:29 +01:00
irqdomain.h x86/apic: Remove X86_IRQ_ALLOC_CONTIGUOUS_VECTORS 2022-11-17 15:15:22 +01:00
irqflags.h x86/bugs: Rename MDS machinery to something more generic 2025-07-10 16:05:14 +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 work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
kasan.h x86/kasan: Map shadow for percpu pages on demand 2022-12-15 10:37:26 -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 arch, mm: move definition of node_data to generic code 2024-09-03 21:15:28 -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/kexec: Allocate PGD for x86_64 transition page tables separately 2025-02-17 10:04:54 +01: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 mm, kmsan: fix infinite recursion due to RCU critical section 2024-01-25 23:52:21 -08:00
kprobes.h kprobes: unify kprobes_exceptions_nofify() prototypes 2023-11-10 19:59:05 +09:00
kvm-x86-ops.h KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop 2025-02-21 14:01:28 +01:00
kvm-x86-pmu-ops.h KVM: x86: Replace static_call_cond() with static_call() 2024-07-16 12:14:11 -04:00
kvm_host.h x86/traps: Initialize DR7 by writing its architectural reset value 2025-08-01 09:48:39 +01:00
kvm_page_track.h KVM: x86/mmu: Handle KVM bookkeeping in page-track APIs, not callers 2023-08-31 14:08:19 -04: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
kvmclock.h kvmclock: Unexport kvmclock clocksource 2024-02-07 17:05:21 +01:00
linkage.h x86/bugs: Rename CONFIG_RETHUNK => CONFIG_MITIGATION_RETHUNK 2024-01-10 10:52:29 +01:00
local.h locking/x86: Implement local_xchg() using CMPXCHG without the LOCK prefix 2024-03-01 12:54:25 +01: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 x86/mce: Rename mce_setup() to mce_prep_record() 2024-08-01 18:20:24 +02:00
mem_encrypt.h x86/sme: Move early SME kernel encryption handling into .head.text 2024-03-04 18:12:33 +01:00
memtype.h x86: Decouple PAT and MTRR handling 2022-11-10 13:12:45 +01:00
microcode.h x86/microcode: Consolidate the loader enablement checking 2025-05-18 08:24:54 +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
mman.h x86: Remove the arch_calc_vm_prot_bits() macro from the UAPI 2023-09-06 23:50:46 +02: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.h x86/mm/tlb: Only trim the mm_cpumask once a second 2025-02-21 14:01:27 +01:00
mmu_context.h x86/mm/tlb: Only trim the mm_cpumask once a second 2025-02-21 14:01:27 +01:00
module.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
mpspec.h printk: Change type of CONFIG_BASE_SMALL to bool 2024-05-06 17:39:09 +02:00
mpspec_def.h x86: Introduce and use MP IRQ trigger and polarity defines 2018-01-14 21:11:54 +01:00
mshyperv.h x86/hyperv: Fix APIC ID and VP index confusion in hv_snp_boot_ap() 2025-08-01 09:48:46 +01:00
msi.h x86/apic/msi: Enable MSI_FLAG_PCI_MSIX_ALLOC_DYN 2022-12-05 22:22:34 +01:00
msr-index.h x86/rdrand: Disable RDSEED on AMD Cyan Skillfish 2025-07-17 18:37:14 +02: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/msr: Switch between WRMSRNS and WRMSR with the alternatives mechanism 2024-08-25 19:23:00 +02:00
mtrr.h x86/mtrr: Remove obsolete declaration for mtrr_bp_restore() 2024-08-25 14:29:38 +02:00
mwait.h x86/process: Move the buffer clearing before MONITOR 2025-07-10 16:05:14 +02:00
nmi.h x86/nmi: Add an emergency handler in nmi_desc & use it in nmi_shootdown_cpus() 2025-05-29 11:02:38 +02:00
nops.h x86/alternatives: Add longer 64-bit NOPs 2023-05-31 10:21:21 +02:00
nospec-branch.h x86/bugs: Add a Transient Scheduler Attacks mitigation 2025-07-10 16:05:14 +02:00
numa.h mm: introduce numa_emulation 2024-09-03 21:15:31 -07: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
olpc.h Platform: OLPC: Move EC-specific functionality out from x86 2019-05-20 17:27:08 +03: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
orc_header.h x86/unwind/orc: Add ELF section with ORC version identifier 2023-06-16 17:17:42 +02:00
orc_lookup.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
orc_types.h x86,objtool: Split UNWIND_HINT_EMPTY in two 2023-03-23 23:18:58 +01:00
page.h x86/mm: Ensure input to pfn_to_kaddr() is treated as a 64-bit type 2023-11-23 11:13:21 +01:00
page_32.h mm, arch: add generic implementation of pfn_valid() for FLATMEM 2023-02-09 16:51:41 -08: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 x86/kaslr: Expose and use the end of the physical memory address space 2024-08-20 13:44:57 +02:00
page_64_types.h docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06:00
page_types.h x86/build changes for v6.10: 2024-05-13 18:05:08 -07:00
paravirt.h x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT 2025-04-20 10:16:00 +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 x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT 2025-04-20 10:16:00 +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-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 x86/setup: Move internal setup_data structures into setup_data.h 2024-01-30 15:17:12 +01: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/locking: Use ALT_OUTPUT_SP() for percpu_{,try_}cmpxchg{64,128}_op() 2025-05-29 11:02:41 +02:00
perf_event.h perf/amd/ibs: Fix perf_ibs_op.cnt_mask for CurCnt 2025-05-29 11:03:05 +02:00
perf_event_p4.h x86/cpu/topology: Rename smp_num_siblings 2024-02-15 22:07:45 +01:00
pgalloc.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
pgtable-2level.h x86/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE also on 32bit 2023-02-02 22:33:10 -08:00
pgtable-2level_types.h x86/mm/32: implement arch_sync_kernel_mappings() 2020-06-02 10:59:11 -07:00
pgtable-3level.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
pgtable-3level_types.h x86/mm/pae: Make pmd_t similar to pte_t 2022-12-15 10:37:27 -08:00
pgtable-invert.h x86/speculation/l1tf: Exempt zeroed PTEs from inversion 2018-08-17 10:27:36 -07:00
pgtable.h mm/x86: support large pfn mappings 2024-09-17 01:06:59 -07:00
pgtable_32.h mm: remove kern_addr_valid() completely 2022-11-08 17:37:18 -08: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 xen: branch for v6.12-rc1a 2024-09-27 09:55:30 -07:00
pgtable_64_types.h x86/kaslr: Expose and use the end of the physical memory address space 2024-08-20 13:44:57 +02:00
pgtable_areas.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
pgtable_types.h x86/mm: Add _PAGE_NOPTISHADOW bit to avoid updating userspace page tables 2024-12-14 20:03:33 +01: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
posted_intr.h x86/irq: Extend checks for pending vectors to posted interrupts 2024-04-30 00:54:43 +02:00
preempt.h Linux 6.8-rc4 2024-02-14 10:45: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/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
processor.h x86: make get_cpu_vendor() accessible from Xen code 2024-12-19 18:13:23 +01:00
prom.h x86/of: Change x86_dtb_parse_smp_config() to static 2024-04-03 08:49:56 +02:00
proto.h x86/entry: Convert INT 0x80 emulation to IDTENTRY 2023-12-07 09:51:29 -08:00
pti.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
ptrace.h x86/ptrace: Add FRED additional information to the pt_regs structure 2024-01-31 22:01:20 +01: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 random: vDSO: minimize and simplify header includes 2024-09-13 17:28:35 +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.h x86/paravirt: Fix incorrect virt spinlock setting on bare metal 2024-08-07 20:04:38 +02:00
qspinlock_paravirt.h locking/pvqspinlock/x86: Use _Q_LOCKED_VAL in PV_UNLOCK_ASM macro 2024-04-24 11:48:08 +02:00
realmode.h x86/smpboot: Implement a bit spinlock to protect the realmode stack 2023-05-15 13:45:03 +02:00
reboot.h KVM/arm64 fixes for 6.12, take #1 2024-10-06 03:59:22 -04: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
required-features.h x86/cpufeatures: Add new word for scattered features 2024-03-25 11:16:54 +01:00
resctrl.h x86/resctrl: Fix arch_mbm_* array overrun on SNC 2024-08-28 11:13:08 +02:00
rmwcc.h work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
runtime-const.h x86: fix whitespace in runtime-const assembler output 2024-10-25 09:53:03 -07:00
seccomp.h x86/syscall/compat: Remove ia32_unistd.h 2024-03-22 09:37:09 +01:00
sections.h lockdep: fix static memory detection even more 2023-08-21 13:46:24 -07:00
segment.h x86/vdso: Choose the right GDT_ENTRY_CPUNODE for 32-bit getcpu() on 64-bit kernel 2023-08-08 09:31:43 +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/tdx: Convert shared memory back to private on kexec 2024-06-17 17:46:05 +02:00
setup.h x86/setup: Warn when option parsing is done too early 2024-05-27 18:54:45 +02:00
setup_arch.h x86: move mach-default/*.h files to asm/ 2009-01-29 14:16:51 +01:00
setup_data.h x86/setup: Move internal setup_data structures into setup_data.h 2024-01-30 15:17:12 +01:00
sev-common.h x86/sev: Fix operator precedence in GHCB_MSR_VMPL_REQ_LEVEL macro 2025-05-29 11:03:14 +02:00
sev.h virt: sev-guest: Ensure the SNP guest messages do not exceed a page 2024-08-27 10:35:38 +02:00
sgx.h x86/sgx: Allow enclaves to use Asynchrounous Exit Notification 2022-11-04 15:33:30 -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
shstk.h uprobe: Add uretprobe syscall to speed up return probe 2024-06-12 08:44:28 +09: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/init: Initialize signal frame size late 2023-06-16 10:16:00 +02:00
sighandling.h x86/fred/signal: Prevent immediate repeat of single step trap on return from SIGTRAP handler 2025-06-19 15:32:37 +02:00
signal.h x86/signal: Remove sigset_t parameter from frame setup functions 2022-10-19 09:58:48 +02: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/smp: Add smp_ops.stop_this_cpu() callback 2024-06-17 17:46:20 +02:00
softirq_stack.h x86/softirq/64: Inline do_softirq_own_stack() 2021-02-10 23:34:17 +01:00
sparsemem.h mm: make range-to-target_node lookup facility a part of numa_memblks 2024-09-03 21:15:32 -07:00
spec-ctrl.h x86/cpu: Provide a declaration for itlb_multihit_kvm_mitigation 2024-03-04 12:09:13 +01:00
special_insns.h x86/asm: Make serialize() always_inline 2025-01-23 17:22:58 +01:00
spinlock.h Merge branch 'linus' into locking/core, to resolve conflicts 2017-11-07 10:32:44 +01:00
spinlock_types.h x86/spinlock: Remove obsolete ticket spinlock macros and types 2020-05-28 21:18:40 +02: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 stackprotector: actually use get_random_canary() 2022-11-18 02:18:10 +01:00
stacktrace.h x86/mm/64: Improve stack overflow warnings 2021-09-21 13:57:43 +02:00
static_call.h x86/static-call: provide a way to do very early static-call updates 2024-12-19 18:13:23 +01: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
string_32.h x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
string_64.h x86/asm/64: Clean up memset16(), memset32(), memset64() assembly constraints in <asm/string_64.h> 2024-03-22 11:47:34 +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/pm: Work around false positive kmemleak report in msr_build_context() 2024-03-22 11:01:31 +01: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 KVM: SVM: Add host SEV-ES save area structure into VMCB via a union 2024-08-29 19:06:12 -07:00
switch_to.h x86/entry: Set FRED RSP0 on return to userspace instead of context switch 2024-08-25 19:23:00 +02:00
sync_bitops.h x86/asm: Modernize sync_bitops.h 2019-04-10 09:53:31 +02:00
sync_core.h x86/static-call: provide a way to do very early static-call updates 2024-12-19 18:13:23 +01:00
syscall.h x86/syscall: Avoid memcpy() for ia32 syscall_get_arguments() 2024-08-23 11:46:51 -07:00
syscall_wrapper.h x86/entry/ia32: Ensure s32 is sign extended to s64 2024-01-24 11:49:19 +01:00
syscalls.h x86: Remove unneeded includes 2020-03-21 16:03:25 +01:00
tdx.h x86/virt/tdx: Avoid indirect calls to TDX assembly functions 2025-06-27 11:11:38 +01:00
text-patching.h x86/alternatives: Use a temporary buffer when optimizing NOPs 2024-04-09 18:08:11 +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/fred: Reserve space for the FRED stack frame 2024-01-31 22:01:31 +01:00
time.h init: consolidate prototypes in linux/init.h 2023-06-09 17:44:16 -07: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 x86/mm: Carve out INVLPG inline asm for use by others 2024-12-05 14:02:57 +01: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 x86/mm: Fix flush_tlb_range() when used for zapping normal PMDs 2025-04-10 14:39:37 +02:00
topology.h ACPI: processor: Move arch_init_invariance_cppc() call later 2024-11-06 21:31:36 +01: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/traps: Define RMP violation #PF error code 2024-01-29 17:26:56 +01:00
trapnr.h x86/trapnr: Add event type macros to <asm/trapnr.h> 2024-01-25 19:10:29 +01:00
traps.h arch: include linux/cpu.h for trap_init() prototype 2023-11-23 11:32:31 +01:00
tsc.h x86/tsc: Remove obsolete ART to TSC conversion functions 2024-06-03 11:18:51 +02:00
uaccess.h x86/uaccess: Fix missed zeroing of ia32 u64 get_user() range checking 2024-06-11 16:08:43 -07:00
uaccess_32.h x86: uaccess: move 32-bit and 64-bit parts into proper <asm/uaccess_N.h> header 2023-05-03 10:37:22 -07:00
uaccess_64.h x86: fix user address masking non-canonical speculation issue 2024-10-25 09:53:03 -07:00
umip.h x86/Kconfig: Rename UMIP config parameter 2019-11-07 11:07:29 +01:00
unaccepted_memory.h x86/sev: Add SNP-specific unaccepted memory support 2023-06-06 18:31:37 +02:00
unistd.h clone3: drop __ARCH_WANT_SYS_CLONE3 macro 2024-07-10 14:23:38 +02:00
unwind.h x86,rethook,kprobes: Replace kretprobe with rethook on x86 2022-03-28 19:38:51 -07:00
unwind_hints.h drm/vmwgfx: Add unwind hints around RBP clobber 2023-06-07 10:03:12 -07:00
uprobes.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07: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
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/vdso: Move VDSO image init to vdso2c generated code 2023-01-25 12:33:40 +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 x86/vgtod: Remove unused typedef gtod_long_t 2024-07-03 21:27:04 +02:00
video.h arch: Rename fbdev header and source files 2024-05-03 17:07:50 +02:00
vm86.h x86/vm86: Make sure the free_vm86(task) definition uses its parameter even in the !CONFIG_VM86 case 2024-03-29 14:24:50 +01:00
vmalloc.h mm/vmalloc: provide fallback arch huge vmap support functions 2021-04-30 11:20:40 -07:00
vmware.h x86/vmware: Add TDX hypercall support 2024-06-25 17:15:48 +02:00
vmx.h KVM: VMX: Open code VMX preemption timer rate mask in its accessor 2024-08-22 11:25:54 -07:00
vmxfeatures.h - Flip the logic to add feature names to /proc/cpuinfo to having to 2024-07-15 20:25:16 -07:00
vsyscall.h x86/mm: Move is_vsyscall_vaddr() into asm/vsyscall.h 2024-02-15 19:21:39 -08:00
vvar.h x86: vdso: Wire up getrandom() vDSO implementation 2024-07-19 20:22:12 +02:00
word-at-a-time.h x86-64: word-at-a-time: improve byte count calculations 2024-06-19 12:35:18 -07:00
x86_init.h x86/mm: Add callbacks to prepare encrypted memory for kexec 2024-06-17 17:46:02 +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 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