linux-stable/arch/x86/include/asm
Linus Torvalds 817772266d * Clean up SVM's enter/exit assembly code so that it can be compiled
without OBJECT_FILES_NON_STANDARD.  This fixes a warning
   "Unpatched return thunk in use. This should not happen!" when running
   KVM selftests.
 
 * Fix a mostly benign bug in the gfn_to_pfn_cache infrastructure where KVM
   would allow userspace to refresh the cache with a bogus GPA.  The bug has
   existed for quite some time, but was exposed by a new sanity check added in
   6.9 (to ensure a cache is either GPA-based or HVA-based).
 
 * Drop an unused param from gfn_to_pfn_cache_invalidate_start() that got left
   behind during a 6.9 cleanup.
 
 * Fix a math goof in x86's hugepage logic for KVM_SET_MEMORY_ATTRIBUTES that
   results in an array overflow (detected by KASAN).
 
 * Fix a bug where KVM incorrectly clears root_role.direct when userspace sets
   guest CPUID.
 
 * Fix a dirty logging bug in the where KVM fails to write-protect SPTEs used
   by a nested guest, if KVM is using Page-Modification Logging and the nested
   hypervisor is NOT using EPT.
 
 x86 PMU:
 
 * Drop support for virtualizing adaptive PEBS, as KVM's implementation is
   architecturally broken without an obvious/easy path forward, and because
   exposing adaptive PEBS can leak host LBRs to the guest, i.e. can leak
   host kernel addresses to the guest.
 
 * Set the enable bits for general purpose counters in PERF_GLOBAL_CTRL at
   RESET time, as done by both Intel and AMD processors.
 
 * Disable LBR virtualization on CPUs that don't support LBR callstacks, as
   KVM unconditionally uses PERF_SAMPLE_BRANCH_CALL_STACK when creating the
   perf event, and would fail on such CPUs.
 
 Tests:
 
 * Fix a flaw in the max_guest_memory selftest that results in it exhausting
   the supply of ucall structures when run with more than 256 vCPUs.
 
 * Mark KVM_MEM_READONLY as supported for RISC-V in set_memory_region_test.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmYjdqcUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroPNRAgAh1AdKBAWnq9bFN2Np1kSAcRAk3bs
 REDq/0iD1T9TvIwEmE1lHaRuqvCSO15WW+DKvbs7TS8zA0DyY7X/x8sIIy5YzZ5C
 bQ+JXiqk55OAj0sPskBpCvE5qEreuU8qAit57+8OseKWs57EICvJjrfsRnHlmIub
 pgGas3I42LjIgsuZRr2kjv+GrvaiikW+wWK6sq3CvPzTtHV196d26AK5l4NOoLkY
 0FTbBIYUSJ7wxs92xuTed5mZ7JFZdsa5DVMXF5MRZ9W6g2vZCLbqCNRddRhSAsl0
 gKmqZkuPTB7AnGQbJ2h/aKFT0ydsguzqbbKq62sK7ft5f1CUlbp9luDC9w==
 =99rq
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "This is a bit on the large side, mostly due to two changes:

   - Changes to disable some broken PMU virtualization (see below for
     details under "x86 PMU")

   - Clean up SVM's enter/exit assembly code so that it can be compiled
     without OBJECT_FILES_NON_STANDARD. This fixes a warning "Unpatched
     return thunk in use. This should not happen!" when running KVM
     selftests.

  Everything else is small bugfixes and selftest changes:

   - Fix a mostly benign bug in the gfn_to_pfn_cache infrastructure
     where KVM would allow userspace to refresh the cache with a bogus
     GPA. The bug has existed for quite some time, but was exposed by a
     new sanity check added in 6.9 (to ensure a cache is either
     GPA-based or HVA-based).

   - Drop an unused param from gfn_to_pfn_cache_invalidate_start() that
     got left behind during a 6.9 cleanup.

   - Fix a math goof in x86's hugepage logic for
     KVM_SET_MEMORY_ATTRIBUTES that results in an array overflow
     (detected by KASAN).

   - Fix a bug where KVM incorrectly clears root_role.direct when
     userspace sets guest CPUID.

   - Fix a dirty logging bug in the where KVM fails to write-protect
     SPTEs used by a nested guest, if KVM is using Page-Modification
     Logging and the nested hypervisor is NOT using EPT.

  x86 PMU:

   - Drop support for virtualizing adaptive PEBS, as KVM's
     implementation is architecturally broken without an obvious/easy
     path forward, and because exposing adaptive PEBS can leak host LBRs
     to the guest, i.e. can leak host kernel addresses to the guest.

   - Set the enable bits for general purpose counters in
     PERF_GLOBAL_CTRL at RESET time, as done by both Intel and AMD
     processors.

   - Disable LBR virtualization on CPUs that don't support LBR
     callstacks, as KVM unconditionally uses
     PERF_SAMPLE_BRANCH_CALL_STACK when creating the perf event, and
     would fail on such CPUs.

  Tests:

   - Fix a flaw in the max_guest_memory selftest that results in it
     exhausting the supply of ucall structures when run with more than
     256 vCPUs.

   - Mark KVM_MEM_READONLY as supported for RISC-V in
     set_memory_region_test"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (30 commits)
  KVM: Drop unused @may_block param from gfn_to_pfn_cache_invalidate_start()
  KVM: selftests: Add coverage of EPT-disabled to vmx_dirty_log_test
  KVM: x86/mmu: Fix and clarify comments about clearing D-bit vs. write-protecting
  KVM: x86/mmu: Remove function comments above clear_dirty_{gfn_range,pt_masked}()
  KVM: x86/mmu: Write-protect L2 SPTEs in TDP MMU when clearing dirty status
  KVM: x86/mmu: Precisely invalidate MMU root_role during CPUID update
  KVM: VMX: Disable LBR virtualization if the CPU doesn't support LBR callstacks
  perf/x86/intel: Expose existence of callback support to KVM
  KVM: VMX: Snapshot LBR capabilities during module initialization
  KVM: x86/pmu: Do not mask LVTPC when handling a PMI on AMD platforms
  KVM: x86: Snapshot if a vCPU's vendor model is AMD vs. Intel compatible
  KVM: x86: Stop compiling vmenter.S with OBJECT_FILES_NON_STANDARD
  KVM: SVM: Create a stack frame in __svm_sev_es_vcpu_run()
  KVM: SVM: Save/restore args across SEV-ES VMRUN via host save area
  KVM: SVM: Save/restore non-volatile GPRs in SEV-ES VMRUN via host save area
  KVM: SVM: Clobber RAX instead of RBX when discarding spec_ctrl_intercepted
  KVM: SVM: Drop 32-bit "support" from __svm_sev_es_vcpu_run()
  KVM: SVM: Wrap __svm_sev_es_vcpu_run() with #ifdef CONFIG_KVM_AMD_SEV
  KVM: SVM: Create a stack frame in __svm_vcpu_run() for unwinding
  KVM: SVM: Remove a useless zeroing of allocated memory
  ...
2024-04-20 11:10:51 -07:00
..
e820 x86/PCI: Revert "x86/PCI: Clip only host bridge windows for E820 regions" 2022-06-17 14:24:14 -05:00
fpu Linux 6.8-rc4 2024-02-14 10:45:07 +01:00
numachip
shared x86/virt/tdx: Get module global metadata for module initialization 2023-12-08 09:12:18 -08:00
trace x86/fpu: Convert tracing to fpstate 2021-10-20 22:35:04 +02:00
uv arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
vdso asm-generic cleanups for 6.8 2024-01-10 18:13:44 -08:00
xen x86/xen: attempt to inflate the memory balloon on PVH 2024-03-13 17:48:26 +01:00
GEN-for-each-reg.h x86/asm: Fix register order 2021-10-28 23:25:26 +02:00
Kbuild x86/headers: Remove <asm/export.h> 2023-10-03 10:38:08 +02:00
acenv.h ACPICA: Avoid cache flush inside virtual machines 2022-04-07 08:27:54 -07:00
acpi.h acpi/processor: sanitize _OSC/_PDC capabilities for Xen dom0 2023-11-13 07:22:00 +01: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/bpf: Fix IP for relocating call depth accounting 2024-04-01 20:37:56 -07: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 arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
apic.h x86/apic: Force native_apic_mem_read() to use the MOV instruction 2024-04-08 15:37:57 +02:00
apicdef.h x86/apic: Drop struct local_apic 2023-11-21 17:23:35 +01: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/bugs: Fix the SRSO mitigation on Zen3/4 2024-03-29 12:13:12 -07:00
asm.h x86/sev: Fix position dependent variable references in startup code 2024-02-06 16:38:42 +01:00
atomic.h locking/atomic: treewide: delete arch_atomic_*() kerneldoc 2023-06-05 09:57:24 +02:00
atomic64_32.h locking/atomic: treewide: delete arch_atomic_*() kerneldoc 2023-06-05 09:57:24 +02:00
atomic64_64.h locking/atomic: treewide: delete arch_atomic_*() kerneldoc 2023-06-05 09:57:24 +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/fred: Fix a build warning with allmodconfig due to 'inline' failing to inline properly 2024-02-02 10:05:55 +01:00
bios_ebda.h
bitops.h Many singleton patches against the MM code. The patch series which are 2023-11-02 19:38:47 -10:00
boot.h x86/efistub: Remap kernel text read-only before dropping NX attribute 2024-03-09 11:37:18 +01:00
bootparam_utils.h docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06: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-06-16 10:15:59 +02:00
cache.h
cacheflush.h
cacheinfo.h x86/cpu: Move cpu_l[l2]c_id into topology info 2023-10-10 14:38:18 +02:00
ce4100.h
cfi.h cfi: Add CFI_NOSEAL() 2023-12-15 16:25:55 -08: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 net: checksum: drop the linux/uaccess.h include 2023-01-27 11:19:46 +00:00
clocksource.h
cmdline.h
cmpxchg.h locking/atomic/x86: Introduce arch_sync_try_cmpxchg() 2023-10-09 18:14:25 +02:00
cmpxchg_32.h arch: Remove cmpxchg_double 2023-06-05 09:36:39 +02:00
cmpxchg_64.h locking/atomic: x86: add preprocessor symbols 2023-06-05 09:57:17 +02:00
coco.h x86/coco: Require seeding RNG with RDRAND on CoCo systems 2024-04-04 10:40:19 +02: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/cpu/topology: Rework possible CPU management 2024-02-15 22:07:43 +01:00
cpu_device_id.h
cpu_entry_area.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
cpufeature.h x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word 2024-04-04 17:42:19 -07:00
cpufeatures.h x86/bhi: Mitigate KVM by default 2024-04-08 19:27:06 +02:00
cpuid.h x86/cpu: Provide cpuid_read() et al. 2024-02-15 22:07:36 +01:00
cpuidle_haltpoll.h
cpumask.h x86/smpboot: Move synchronization masks to SMP boot code 2023-05-15 13:44:52 +02:00
crash.h
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/msr: Prepare for including <linux/percpu.h> into <asm/msr.h> 2024-03-04 12:01:39 +01:00
delay.h
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
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
doublefault.h x86: Avoid missing-prototype warnings for doublefault code 2023-05-18 11:56:18 -07:00
dwarf2.h
edac.h
efi.h x86/efi: Implement arch_ima_efi_boot_mode() in source file 2024-01-30 15:17:17 +01:00
elf.h x86/vdso: Move vDSO to mmap region 2024-02-27 00:23:55 +01:00
elfcore-compat.h
emergency-restart.h
emulate_prefix.h
enclu.h
entry-common.h x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key 2024-02-19 16:31:49 -08: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/fred: Fixup fault on ERETU by jumping to fred_entrypoint_user 2024-01-31 22:03:04 +01:00
fb.h fbdev: Replace fb_pgprotect() with pgprot_framebuffer() 2023-10-12 09:20:46 +02:00
fixmap.h
floppy.h
frame.h
fred.h x86/fred: Add FRED initialization functions 2024-01-31 22:03:32 +01: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 Tracing updates for 6.5: 2023-06-30 10:33:17 -07: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
genapic.h
geode.h
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: replace CONFIG_HAVE_KVM with IS_ENABLED(CONFIG_KVM) 2024-02-08 08:45:35 -05:00
highmem.h mm/usercopy: Check kmap addresses properly 2022-04-13 12:15:50 -07:00
hpet.h
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 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
i8259.h x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility 2023-10-27 20:36:49 +02:00
ia32.h x86/fred: FRED entry/exit and dispatch code 2024-01-31 22:02:31 +01:00
ia32_unistd.h
ibt.h x86/alternative: Rename apply_ibt_endbr() 2023-07-10 09:52:23 +02:00
idtentry.h S390: 2024-03-15 13:03:13 -07:00
imr.h
inat.h
inat_types.h
init.h x86/head/64: Move the __head definition to <asm/init.h> 2023-10-17 14:51:14 +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 AVX512-FP16 instructions to the x86 instruction decoder 2022-01-23 20:38:01 +01:00
inst.h
intel-family.h x86/cpu: Add model number for another Intel Arrow Lake mobile processor 2024-03-24 04:08:10 +01: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: Enable PEBS format 5 2022-02-02 13:11:43 +01:00
intel_pconfig.h
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
intel_telemetry.h
invpcid.h
io.h x86/asm: Remove the __iomem annotation of movdir64b()'s dst argument 2024-02-22 14:52:09 -08: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
iomap.h
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 x86/apic/msi: Remove arch_create_remap_msi_irq_domain() 2022-12-05 22:22:33 +01:00
irq_stack.h x86/percpu: Move irq_stack variables next to current_task 2022-10-17 16:41:05 +02:00
irq_vectors.h x86: irq: unconditionally define KVM interrupt vectors 2024-02-23 05:23:14 -05: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 objtool/idle: Validate __cpuidle code as noinstr 2023-01-13 11:48:15 +01:00
ist.h
jailhouse_para.h
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
kbdleds.h
kdebug.h
kexec-bzimage64.h
kexec.h x86: Do not include <asm/bootparam.h> in several files 2024-01-30 15:17:24 +01:00
kfence.h
kgdb.h
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 S390: 2024-03-15 13:03:13 -07:00
kvm-x86-pmu-ops.h KVM: x86/pmu: Move pmc_idx => pmc translation helper to common code 2024-02-01 09:35:47 -08:00
kvm_host.h KVM: x86: Snapshot if a vCPU's vendor model is AMD vs. Intel compatible 2024-04-11 12:58:56 -04: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_vcpu_regs.h
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
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 x86/MCE/AMD: Add new MA_LLC, USR_DP, and USR_CP bank types 2023-11-28 16:26:55 +01: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/intel: Add a minimum required revision for late loading 2023-10-24 15:05:55 +02:00
misc.h
mman.h x86: Remove the arch_calc_vm_prot_bits() macro from the UAPI 2023-09-06 23:50:46 +02:00
mmconfig.h
mmu.h x86/mm: delete unused cpu argument to leave_mm() 2024-02-22 10:24:41 -08:00
mmu_context.h x86/shstk: Handle vfork clone failure correctly 2023-09-19 09:18:34 -07:00
mmzone.h
mmzone_32.h
mmzone_64.h
module.h
mpspec.h x86/mpparse: Use new APIC registration function 2024-02-15 22:07:42 +01:00
mpspec_def.h
mshyperv.h hyperv-tlfs: Change prefix of generic HV_REGISTER_* MSRs to HV_MSR_* 2024-03-04 06:59:18 +00: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/bhi: Enumerate Branch History Injection (BHI) bug 2024-04-08 19:27:05 +02:00
msr-trace.h
msr.h Misc cleanups, including a large series from Thomas Gleixner to 2024-03-11 19:37:56 -07:00
mtrr.h x86/mtrr: Remove unused code 2023-06-01 15:04:33 +02:00
mwait.h x86: Fix CPUIDLE_FLAG_IRQ_ENABLE leaking timer reprogram 2023-11-29 15:44:01 +01:00
nmi.h x86/nmi: Drop unused declaration of proc_nmi_enabled() 2024-03-06 10:13:33 +01:00
nops.h x86/alternatives: Add longer 64-bit NOPs 2023-05-31 10:21:21 +02:00
nospec-branch.h x86/bhi: Mitigate KVM by default 2024-04-08 19:27:06 +02:00
numa.h x86/mm: Drop the 4 MB restriction on minimal NUMA node memory size 2023-10-20 10:40:22 +02:00
numa_32.h
olpc.h
olpc_ofw.h
orc_header.h x86/unwind/orc: Add ELF section with ORC version identifier 2023-06-16 17:17:42 +02:00
orc_lookup.h
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
page_64.h mm, arch: add generic implementation of pfn_valid() for FLATMEM 2023-02-09 16:51:41 -08:00
page_64_types.h docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06:00
page_types.h arch: define CONFIG_PAGE_SIZE_*KB on all architectures 2024-03-06 19:29:09 +01:00
paravirt.h header cleanups for 6.8 2024-01-10 16:43:55 -08: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 header cleanups for 6.8 2024-01-10 16:43:55 -08:00
parport.h
pc-conf-reg.h
pci-direct.h
pci-functions.h
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 Linux 6.8-rc4 2024-02-14 10:45:07 +01:00
perf_event.h perf/x86/intel: Expose existence of callback support to KVM 2024-04-11 12:58:47 -07: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
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
pgtable.h - Sumanth Korikkar has taught s390 to allocate hotplug-time page frames 2024-03-14 17:43:30 -07:00
pgtable_32.h mm: remove kern_addr_valid() completely 2022-11-08 17:37:18 -08:00
pgtable_32_areas.h
pgtable_32_types.h
pgtable_64.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
pgtable_64_types.h x86/startup_64: Defer assignment of 5-level paging global variables 2024-03-04 18:12:06 +01:00
pgtable_areas.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
pgtable_types.h Add x86 shadow stack support 2023-08-31 12:20:12 -07: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
pm-trace.h
posix_types.h
preempt.h Linux 6.8-rc4 2024-02-14 10:45:07 +01:00
probe_roms.h
processor-cyrix.h
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 Core x86 changes for v6.9: 2024-03-11 19:53:15 -07:00
prom.h x86/dtb: Rename x86_dtb_init() 2024-02-15 22:07:40 +01: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
pvclock-abi.h
pvclock.h sched/clock/x86: Mark sched_clock() noinstr 2023-01-31 15:01:47 +01:00
qrwlock.h
qspinlock.h x86/paravirt: Silence unused native_pv_lock_init() function warning 2023-08-03 16:50:19 +02:00
qspinlock_paravirt.h x86/paravirt: Move some functions and defines to alternative.c 2023-12-10 20:30:31 +01:00
realmode.h x86/smpboot: Implement a bit spinlock to protect the realmode stack 2023-05-15 13:45:03 +02:00
reboot.h x86/reboot: Expose VMCS crash hooks if and only if KVM_{INTEL,AMD} is enabled 2023-08-03 15:37:14 -07:00
reboot_fixups.h
required-features.h x86/cpufeatures: Add new word for scattered features 2024-03-25 11:16:54 +01:00
resctrl.h x86/resctrl: Add helpers for system wide mon/alloc capable 2024-02-16 19:18:33 +01:00
rmwcc.h work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
seccomp.h
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
set_memory.h x86/mm: Regularize set_memory_p() parameters and make non-static 2024-03-01 08:31:41 +00:00
setup.h x86/boot/64: Simplify global variable accesses in GDT/IDT programming 2024-02-26 12:58:11 +01:00
setup_arch.h
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: Put PSC struct on the stack in prep for unaccepted memory support 2023-06-06 18:28:25 +02:00
sev.h x86/CPU/AMD: Track SNP host status with cc_platform_*() 2024-04-04 10:40:30 +02:00
sgx.h x86/sgx: Allow enclaves to use Asynchrounous Exit Notification 2022-11-04 15:33:30 -07:00
shmparam.h
shstk.h x86/shstk: Add ARCH_SHSTK_STATUS 2023-08-02 15:01:51 -07:00
sigcontext.h
sigframe.h x86/init: Initialize signal frame size late 2023-06-16 10:16:00 +02:00
sighandling.h x86/signal: Add ABI prefixes to frame setup functions 2022-10-19 09:58:49 +02:00
signal.h x86/signal: Remove sigset_t parameter from frame setup functions 2022-10-19 09:58:48 +02:00
simd.h
smap.h x86/cpu: Remove CONFIG_X86_SMAP and "nosmap" 2022-04-04 10:16:57 +02:00
smp.h Misc cleanups, including a large series from Thomas Gleixner to 2024-03-11 19:37:56 -07:00
softirq_stack.h
sparsemem.h x86/numa: Introduce numa_fill_memblks() 2023-09-12 16:13:05 -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 * Fix sparse warning from TDX use of movdir64b() 2024-03-11 20:20:36 -07:00
spinlock.h
spinlock_types.h
sta2x11.h
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/bugs: Rename CONFIG_RETHUNK => CONFIG_MITIGATION_RETHUNK 2024-01-10 10:52:29 +01: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: kmsan: use C versions of memset16/memset32/memset64 2023-03-28 16:20:11 -07:00
suspend.h
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: Rename vmplX_ssp -> plX_ssp 2024-02-27 12:22:43 -08:00
switch_to.h x86/fred: Update MSR_IA32_FRED_RSP0 during task switch 2024-01-31 22:01:36 +01:00
sync_bitops.h
sync_core.h
syscall.h x86/bhi: Add support for clearing branch history at syscall entry 2024-04-08 19:27:05 +02:00
syscall_wrapper.h x86/entry/ia32: Ensure s32 is sign extended to s64 2024-01-24 11:49:19 +01:00
syscalls.h
tdx.h x86/mce: Differentiate real hardware #MCs from TDX erratum ones 2023-12-12 08:46:46 -08:00
text-patching.h Linux 6.8-rc4 2024-02-14 10:45:07 +01:00
thermal.h
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
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 Add x86 shadow stack support 2023-08-31 12:20:12 -07:00
topology.h - Add a FRU (Field Replaceable Unit) memory poison manager which 2024-03-11 18:14:06 -07:00
trace_clock.h
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/msr: Add missing __percpu annotations 2024-03-04 12:01:54 +01:00
uaccess.h work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08: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 Core x86 changes for v6.9: 2024-03-11 19:53:15 -07:00
umip.h
unaccepted_memory.h x86/sev: Add SNP-specific unaccepted memory support 2023-06-06 18:31:37 +02:00
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 drm/vmwgfx: Add unwind hints around RBP clobber 2023-06-07 10:03:12 -07: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/vdso: Move VDSO image init to vdso2c generated code 2023-01-25 12:33:40 +01:00
vermagic.h
vga.h
vgtod.h
vm86.h
vmalloc.h
vmware.h
vmx.h x86/trapnr: Add event type macros to <asm/trapnr.h> 2024-01-25 19:10:29 +01:00
vmxfeatures.h x86/cpu: Add a VMX flag to enumerate 5-level EPT support to userspace 2024-02-22 16:03:56 -08:00
vsyscall.h x86/mm: Move is_vsyscall_vaddr() into asm/vsyscall.h 2024-02-15 19:21:39 -08:00
vvar.h
word-at-a-time.h kernel.h: removed REPEAT_BYTE from kernel.h 2024-02-01 09:47:59 -08:00
x86_init.h x86/sev: Skip ROM range scans and validation for SEV-SNP guests 2024-03-26 15:22:35 +01: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