mirror_ubuntu-kernels/arch/x86/include/asm
Linus Torvalds 2d9db778dd Timers and timekeeping updates:
- Core code:
 
    - Make timekeeping and VDSO time readouts resilent against math overflow:
 
      In guest context the kernel is prone to math overflow when the host
      defers the timer interrupt due to overload, malfunction or malice.
 
      This can be mitigated by checking the clocksource delta for the
      maximum deferrement which is readily available. If that value is
      exceeded then the code uses a slowpath function which can handle the
      multiplication overflow.
 
      This functionality is enabled unconditionally in the kernel, but made
      conditional in the VDSO code. The latter is conditional because it
      allows architectures to optimize the check so it is not causing
      performance regressions.
 
      On X86 this is achieved by reworking the existing check for negative
      TSC deltas as a negative delta obviously exceeds the maximum
      deferrement when it is evaluated as an unsigned value. That avoids two
      conditionals in the hotpath and allows to hide both the negative delta
      and the large delta handling in the same slow path.
 
    - Add an initial minimal ktime_t abstraction for Rust
 
    - The usual boring cleanups and enhancements
 
  - Drivers:
 
    - Boring updates to device trees and trivial enhancements in various
      drivers.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmZBErUTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoZVhD/9iUPzcGNgqGqcO1bXy6dH4xLpeec6o
 2En1vg45DOaygN7DFxkoei20KJtfdFeaaEDH8UqmOfPcpLIuVAd0yqhgDQtx6ZcO
 XNd09SFDInzUt1Ot/WcoXp5N6Wt3vyEgUAlIN1fQdbaZ3fh6OhGhXXCRfiRCGXU1
 ea2pSunLuRf1pKU0AYhGIexnZMOHC4NmVXw/m+WNw5DJrmWB+OaNFKfMoQjtQ1HD
 Vgyr2RALHnIeXm60y2j3dD7TWGXICE/edzOd7pEyg5LFXsmcp388eu/DEdOq3OTV
 tsHLgIi05GJym3dykPBVwZk09M5oVNNfkg9zDxHWhSLkEJmc4QUaH3dgM8uBoaRW
 pS3LaO3ePxWmtAOdSNKFY6xnl6df+PYJoZcIF/GuXgty7im+VLK9C4M05mSjey00
 omcEywvmGdFezY6D9MmjjhFa+q2v9zpRjFpCWaIv3DQdAaDPrOzBk4SSqHZOV4lq
 +hp7ar1mTn1FPrXBouwyOgSOUANISV5cy/QuwOtrVIuVR4rWFVgfWo/7J32/q5Ik
 XBR0lTdQy1Biogf6xy0HCY+4wItOLTqEXXqeknHSMJpDzj5uZglZemgKbix1wVJ9
 8YlD85Q7sktlPmiLMKV9ra0MKVyXDoIrgt4hX98A8M12q9bNdw23x0p0jkJHwGha
 ZYUyX+XxKgOJug==
 =pL+S
 -----END PGP SIGNATURE-----

Merge tag 'timers-core-2024-05-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timers and timekeeping updates from Thomas Gleixner:
 "Core code:

   - Make timekeeping and VDSO time readouts resilent against math
     overflow:

     In guest context the kernel is prone to math overflow when the host
     defers the timer interrupt due to overload, malfunction or malice.

     This can be mitigated by checking the clocksource delta for the
     maximum deferrement which is readily available. If that value is
     exceeded then the code uses a slowpath function which can handle
     the multiplication overflow.

     This functionality is enabled unconditionally in the kernel, but
     made conditional in the VDSO code. The latter is conditional
     because it allows architectures to optimize the check so it is not
     causing performance regressions.

     On X86 this is achieved by reworking the existing check for
     negative TSC deltas as a negative delta obviously exceeds the
     maximum deferrement when it is evaluated as an unsigned value. That
     avoids two conditionals in the hotpath and allows to hide both the
     negative delta and the large delta handling in the same slow path.

   - Add an initial minimal ktime_t abstraction for Rust

   - The usual boring cleanups and enhancements

  Drivers:

   - Boring updates to device trees and trivial enhancements in various
     drivers"

* tag 'timers-core-2024-05-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (33 commits)
  clocksource/drivers/arm_arch_timer: Mark hisi_161010101_oem_info const
  clocksource/drivers/timer-ti-dm: Remove an unused field in struct dmtimer
  clocksource/drivers/renesas-ostm: Avoid reprobe after successful early probe
  clocksource/drivers/renesas-ostm: Allow OSTM driver to reprobe for RZ/V2H(P) SoC
  dt-bindings: timer: renesas: ostm: Document Renesas RZ/V2H(P) SoC
  rust: time: doc: Add missing C header links
  clocksource: Make the int help prompt unit readable in ncurses
  hrtimer: Rename __hrtimer_hres_active() to hrtimer_hres_active()
  timerqueue: Remove never used function timerqueue_node_expires()
  rust: time: Add Ktime
  vdso: Fix powerpc build U64_MAX undeclared error
  clockevents: Convert s[n]printf() to sysfs_emit()
  clocksource: Convert s[n]printf() to sysfs_emit()
  clocksource: Make watchdog and suspend-timing multiplication overflow safe
  timekeeping: Let timekeeping_cycles_to_ns() handle both under and overflow
  timekeeping: Make delta calculation overflow safe
  timekeeping: Prepare timekeeping_cycles_to_ns() for overflow safety
  timekeeping: Fold in timekeeping_delta_to_ns()
  timekeeping: Consolidate timekeeping helpers
  timekeeping: Refactor timekeeping helpers
  ...
2024-05-14 09:27:40 -07:00
..
e820 x86/e820: Add a new e820 table update helper 2024-04-29 11:15:31 +02: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 x86/vdso: Make delta calculation overflow safe 2024-04-08 15:03:07 +02:00
xen x86/xen: attempt to inflate the memory balloon on PVH 2024-03-13 17:48:26 +01: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 - Switch the in-place instruction patching which lead to at least one weird bug 2024-05-14 08:51:37 -07: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
amd-ibs.h perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions 2022-09-29 12:20:54 +02:00
apic.h x86/asm changes for v6.10: 2024-05-13 17:36:32 -07: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/extable: Remove unused fixup type EX_TYPE_COPY 2024-04-04 17:01:40 +02:00
atomic64_32.h x86/asm changes for v6.10: 2024-05-13 17:36:32 -07: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
atomic.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 sched: Add missing memory barrier in switch_mm_cid 2024-04-16 13:59:45 +02: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/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 - 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 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: 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_32.h
checksum_64.h net: checksum: drop the linux/uaccess.h include 2023-01-27 11:19:46 +00: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
cmdline.h
cmpxchg_32.h locking/atomic/x86: Merge __arch{,_try}_cmpxchg64_emu_local() with __arch{,_try}_cmpxchg64_emu() 2024-04-24 11:45:13 +02:00
cmpxchg_64.h locking/atomic/x86: Introduce arch_try_cmpxchg64_local() 2024-04-14 22:40:54 +02:00
cmpxchg.h locking/atomic/x86: Introduce arch_sync_try_cmpxchg() 2023-10-09 18:14:25 +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_device_id.h x86/cpu/vfm: Add new macros to work with (vendor/family/model) values 2024-04-22 11:43:55 +02:00
cpu_entry_area.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
cpu.h x86/cpu/topology: Rework possible CPU management 2024-02-15 22:07:43 +01: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/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_reserve.h crash: use macro to add crashk_res into iomem early for specific arch 2024-03-26 11:14:12 -07:00
crash.h x86/crash: Remove crash_reserve_low_1M() 2021-06-07 12:14:45 +02: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_defs.h x86/asm: Always set A (accessed) flag in GDT descriptors 2023-12-20 10:57:51 +01:00
desc.h Merge branch 'linus' into x86/boot, to resolve conflict 2024-03-12 09:55:57 +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 [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/bugs: Use ALTERNATIVE() instead of mds_user_clear static key 2024-02-19 16:31:49 -08:00
espfix.h
exec.h
extable_fixup_types.h x86/extable: Remove unused fixup type EX_TYPE_COPY 2024-04-04 17:01:40 +02:00
extable.h x86/extable: Annotate ex_handler_msr_mce() as a dead end 2022-05-27 12:34:45 +02:00
fb.h fbdev: Replace fb_pgprotect() with pgprot_framebuffer() 2023-10-12 09:20:46 +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
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
GEN-for-each-reg.h x86/asm: Fix register order 2021-10-28 23:25:26 +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 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 genirq/matrix: Dynamic bitmap allocation 2024-02-23 10:18:44 +01: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
hyperv-tlfs.h hyperv-tlfs: Change prefix of generic HV_REGISTER_* MSRs to HV_MSR_* 2024-03-04 06:59:18 +00: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/32: Remove unused IA32_STACK_TOP and two externs 2024-04-02 15:01:40 +02:00
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_types.h
inat.h x86/insn: Add a __ignore_sync_check__ marker 2021-03-15 11:00:57 +01:00
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 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
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
intel-family.h x86/cpu/vfm: Update arch/x86/include/asm/intel-family.h 2024-04-22 11:44:00 +02:00
intel-mid.h x86/platform/intel-mid: Remove unused definitions from intel-mid.h 2023-03-22 11:08:40 -07:00
invpcid.h
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
io.h x86/asm: Remove the __iomem annotation of movdir64b()'s dst argument 2024-02-22 14:52:09 -08: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_remapping.h x86/apic/msi: Remove arch_create_remap_msi_irq_domain() 2022-12-05 22:22:33 +01: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: 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
irq.h x86: replace CONFIG_HAVE_KVM with IS_ENABLED(CONFIG_KVM) 2024-02-08 08:45:35 -05: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
Kbuild x86/headers: Remove <asm/export.h> 2023-10-03 10:38:08 +02:00
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 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-01-25 23:52:21 -08:00
kprobes.h kprobes: unify kprobes_exceptions_nofify() prototypes 2023-11-10 19:59:05 +09: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
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
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: Implement recovery for errors in TDX/SEAM non-root mode 2024-04-09 09:30:36 +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/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_context.h x86/shstk: Handle vfork clone failure correctly 2023-09-19 09:18:34 -07:00
mmu.h x86/mm: delete unused cpu argument to leave_mm() 2024-02-22 10:24:41 -08:00
mmzone_32.h
mmzone_64.h
mmzone.h
module.h
mpspec_def.h
mpspec.h x86/mpparse: Use new APIC registration function 2024-02-15 22:07:42 +01:00
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/cleanups changes for v6.10: 2024-05-13 18:21:24 -07: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_32.h
numa.h x86/mm: Drop the 4 MB restriction on minimal NUMA node memory size 2023-10-20 10:40:22 +02:00
olpc_ofw.h
olpc.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_32_types.h x86/build: Fix vmlinux size check on 64-bit 2020-10-29 21:54:35 +01:00
page_32.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_64.h mm, arch: add generic implementation of pfn_valid() for FLATMEM 2023-02-09 16:51:41 -08:00
page_types.h x86/build changes for v6.10: 2024-05-13 18:05:08 -07: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
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
paravirt.h header cleanups for 6.8 2024-01-10 16:43:55 -08: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_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-functions.h
pci.h x86/setup: Move internal setup_data structures into setup_data.h 2024-01-30 15:17:12 +01:00
percpu.h x86/percpu: Introduce raw_cpu_read_long() to reduce ifdeffery 2024-04-06 12:42:17 +02:00
perf_event_p4.h x86/cpu/topology: Rename smp_num_siblings 2024-02-15 22:07:45 +01:00
perf_event.h perf/x86/intel: Expose existence of callback support to KVM 2024-04-11 12:58:47 -07:00
pgalloc.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
pgtable_32_areas.h
pgtable_32_types.h
pgtable_32.h mm: remove kern_addr_valid() completely 2022-11-08 17:37:18 -08: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_64.h x86/bugs: Rename CONFIG_PAGE_TABLE_ISOLATION => CONFIG_MITIGATION_PAGE_TABLE_ISOLATION 2024-01-10 10:52:28 +01:00
pgtable_areas.h x86/mm: Randomize per-cpu entry area 2022-12-15 10:37:26 -08:00
pgtable_types.h x86/mm changes for v6.10: 2024-05-13 19:02:49 -07:00
pgtable-2level_types.h
pgtable-2level.h x86/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE also on 32bit 2023-02-02 22:33:10 -08:00
pgtable-3level_types.h x86/mm/pae: Make pmd_t similar to pte_t 2022-12-15 10:37:27 -08: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-invert.h
pgtable.h - Sumanth Korikkar has taught s390 to allocate hotplug-time page frames 2024-03-14 17:43:30 -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 sfi: Remove framework for deprecated firmware 2021-02-15 20:09:46 +01:00
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 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/cpu changes for v6.10: 2024-05-13 18:44:44 -07: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
pvclock-abi.h
pvclock.h sched/clock/x86: Mark sched_clock() noinstr 2023-01-31 15:01:47 +01:00
qrwlock.h
qspinlock_paravirt.h locking/pvqspinlock/x86: Use _Q_LOCKED_VAL in PV_UNLOCK_ASM macro 2024-04-24 11:48:08 +02:00
qspinlock.h locking/qspinlock/x86: Micro-optimize virt_spin_lock() 2024-04-24 11:46:28 +02:00
realmode.h x86/smpboot: Implement a bit spinlock to protect the realmode stack 2023-05-15 13:45:03 +02:00
reboot_fixups.h
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
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 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
set_memory.h x86/mm: Regularize set_memory_p() parameters and make non-static 2024-03-01 08:31:41 +00: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
setup.h x86/boot/64: Simplify global variable accesses in GDT/IDT programming 2024-02-26 12:58:11 +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 - Small cleanups and improvements 2024-05-14 09:18:52 -07: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 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-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 x86/asm: Use "m" operand constraint in WRUSSQ asm template 2024-03-20 12:04:38 +01:00
spinlock_types.h
spinlock.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_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
string.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
suspend.h
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 x86/membarrier: Get rid of a dubious optimization 2020-12-09 09:37:42 +01:00
syscall_wrapper.h x86/entry/ia32: Ensure s32 is sign extended to s64 2024-01-24 11:49:19 +01:00
syscall.h x86/bhi: Add support for clearing branch history at syscall entry 2024-04-08 19:27:05 +02: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 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
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_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
uaccess.h x86/asm: Use %c/%n instead of %P operand modifier in asm templates 2024-03-19 13:15:35 +01: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_hints.h drm/vmwgfx: Add unwind hints around RBP clobber 2023-06-07 10:03:12 -07:00
unwind.h x86,rethook,kprobes: Replace kretprobe with rethook on x86 2022-03-28 19:38:51 -07:00
uprobes.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
user.h
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 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
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_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
xor.h lib/xor: make xor prototypes more friendly to compiler vectorization 2022-02-11 20:39:39 +11:00