1
linux/arch/powerpc/include/asm
Linus Torvalds 09d1c6a80f Generic:
- Use memdup_array_user() to harden against overflow.
 
 - Unconditionally advertise KVM_CAP_DEVICE_CTRL for all architectures.
 
 - Clean up Kconfigs that all KVM architectures were selecting
 
 - New functionality around "guest_memfd", a new userspace API that
   creates an anonymous file and returns a file descriptor that refers
   to it.  guest_memfd files are bound to their owning virtual machine,
   cannot be mapped, read, or written by userspace, and cannot be resized.
   guest_memfd files do however support PUNCH_HOLE, which can be used to
   switch a memory area between guest_memfd and regular anonymous memory.
 
 - New ioctl KVM_SET_MEMORY_ATTRIBUTES allowing userspace to specify
   per-page attributes for a given page of guest memory; right now the
   only attribute is whether the guest expects to access memory via
   guest_memfd or not, which in Confidential SVMs backed by SEV-SNP,
   TDX or ARM64 pKVM is checked by firmware or hypervisor that guarantees
   confidentiality (AMD PSP, Intel TDX module, or EL2 in the case of pKVM).
 
 x86:
 
 - Support for "software-protected VMs" that can use the new guest_memfd
   and page attributes infrastructure.  This is mostly useful for testing,
   since there is no pKVM-like infrastructure to provide a meaningfully
   reduced TCB.
 
 - Fix a relatively benign off-by-one error when splitting huge pages during
   CLEAR_DIRTY_LOG.
 
 - Fix a bug where KVM could incorrectly test-and-clear dirty bits in non-leaf
   TDP MMU SPTEs if a racing thread replaces a huge SPTE with a non-huge SPTE.
 
 - Use more generic lockdep assertions in paths that don't actually care
   about whether the caller is a reader or a writer.
 
 - let Xen guests opt out of having PV clock reported as "based on a stable TSC",
   because some of them don't expect the "TSC stable" bit (added to the pvclock
   ABI by KVM, but never set by Xen) to be set.
 
 - Revert a bogus, made-up nested SVM consistency check for TLB_CONTROL.
 
 - Advertise flush-by-ASID support for nSVM unconditionally, as KVM always
   flushes on nested transitions, i.e. always satisfies flush requests.  This
   allows running bleeding edge versions of VMware Workstation on top of KVM.
 
 - Sanity check that the CPU supports flush-by-ASID when enabling SEV support.
 
 - On AMD machines with vNMI, always rely on hardware instead of intercepting
   IRET in some cases to detect unmasking of NMIs
 
 - Support for virtualizing Linear Address Masking (LAM)
 
 - Fix a variety of vPMU bugs where KVM fail to stop/reset counters and other state
   prior to refreshing the vPMU model.
 
 - Fix a double-overflow PMU bug by tracking emulated counter events using a
   dedicated field instead of snapshotting the "previous" counter.  If the
   hardware PMC count triggers overflow that is recognized in the same VM-Exit
   that KVM manually bumps an event count, KVM would pend PMIs for both the
   hardware-triggered overflow and for KVM-triggered overflow.
 
 - Turn off KVM_WERROR by default for all configs so that it's not
   inadvertantly enabled by non-KVM developers, which can be problematic for
   subsystems that require no regressions for W=1 builds.
 
 - Advertise all of the host-supported CPUID bits that enumerate IA32_SPEC_CTRL
   "features".
 
 - Don't force a masterclock update when a vCPU synchronizes to the current TSC
   generation, as updating the masterclock can cause kvmclock's time to "jump"
   unexpectedly, e.g. when userspace hotplugs a pre-created vCPU.
 
 - Use RIP-relative address to read kvm_rebooting in the VM-Enter fault paths,
   partly as a super minor optimization, but mostly to make KVM play nice with
   position independent executable builds.
 
 - Guard KVM-on-HyperV's range-based TLB flush hooks with an #ifdef on
   CONFIG_HYPERV as a minor optimization, and to self-document the code.
 
 - Add CONFIG_KVM_HYPERV to allow disabling KVM support for HyperV "emulation"
   at build time.
 
 ARM64:
 
 - LPA2 support, adding 52bit IPA/PA capability for 4kB and 16kB
   base granule sizes. Branch shared with the arm64 tree.
 
 - Large Fine-Grained Trap rework, bringing some sanity to the
   feature, although there is more to come. This comes with
   a prefix branch shared with the arm64 tree.
 
 - Some additional Nested Virtualization groundwork, mostly
   introducing the NV2 VNCR support and retargetting the NV
   support to that version of the architecture.
 
 - A small set of vgic fixes and associated cleanups.
 
 Loongarch:
 
 - Optimization for memslot hugepage checking
 
 - Cleanup and fix some HW/SW timer issues
 
 - Add LSX/LASX (128bit/256bit SIMD) support
 
 RISC-V:
 
 - KVM_GET_REG_LIST improvement for vector registers
 
 - Generate ISA extension reg_list using macros in get-reg-list selftest
 
 - Support for reporting steal time along with selftest
 
 s390:
 
 - Bugfixes
 
 Selftests:
 
 - Fix an annoying goof where the NX hugepage test prints out garbage
   instead of the magic token needed to run the test.
 
 - Fix build errors when a header is delete/moved due to a missing flag
   in the Makefile.
 
 - Detect if KVM bugged/killed a selftest's VM and print out a helpful
   message instead of complaining that a random ioctl() failed.
 
 - Annotate the guest printf/assert helpers with __printf(), and fix the
   various bugs that were lurking due to lack of said annotation.
 
 There are two non-KVM patches buried in the middle of guest_memfd support:
 
   fs: Rename anon_inode_getfile_secure() and anon_inode_getfd_secure()
   mm: Add AS_UNMOVABLE to mark mapping as completely unmovable
 
 The first is small and mostly suggested-by Christian Brauner; the second
 a bit less so but it was written by an mm person (Vlastimil Babka).
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmWcMWkUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroO15gf/WLmmg3SET6Uzw9iEq2xo28831ZA+
 6kpILfIDGKozV5safDmMvcInlc/PTnqOFrsKyyN4kDZ+rIJiafJdg/loE0kPXBML
 wdR+2ix5kYI1FucCDaGTahskBDz8Lb/xTpwGg9BFLYFNmuUeHc74o6GoNvr1uliE
 4kLZL2K6w0cSMPybUD+HqGaET80ZqPwecv+s1JL+Ia0kYZJONJifoHnvOUJ7DpEi
 rgudVdgzt3EPjG0y1z6MjvDBXTCOLDjXajErlYuZD3Ej8N8s59Dh2TxOiDNTLdP4
 a4zjRvDmgyr6H6sz+upvwc7f4M4p+DBvf+TkWF54mbeObHUYliStqURIoA==
 =66Ws
 -----END PGP SIGNATURE-----

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

Pull kvm updates from Paolo Bonzini:
 "Generic:

   - Use memdup_array_user() to harden against overflow.

   - Unconditionally advertise KVM_CAP_DEVICE_CTRL for all
     architectures.

   - Clean up Kconfigs that all KVM architectures were selecting

   - New functionality around "guest_memfd", a new userspace API that
     creates an anonymous file and returns a file descriptor that refers
     to it. guest_memfd files are bound to their owning virtual machine,
     cannot be mapped, read, or written by userspace, and cannot be
     resized. guest_memfd files do however support PUNCH_HOLE, which can
     be used to switch a memory area between guest_memfd and regular
     anonymous memory.

   - New ioctl KVM_SET_MEMORY_ATTRIBUTES allowing userspace to specify
     per-page attributes for a given page of guest memory; right now the
     only attribute is whether the guest expects to access memory via
     guest_memfd or not, which in Confidential SVMs backed by SEV-SNP,
     TDX or ARM64 pKVM is checked by firmware or hypervisor that
     guarantees confidentiality (AMD PSP, Intel TDX module, or EL2 in
     the case of pKVM).

  x86:

   - Support for "software-protected VMs" that can use the new
     guest_memfd and page attributes infrastructure. This is mostly
     useful for testing, since there is no pKVM-like infrastructure to
     provide a meaningfully reduced TCB.

   - Fix a relatively benign off-by-one error when splitting huge pages
     during CLEAR_DIRTY_LOG.

   - Fix a bug where KVM could incorrectly test-and-clear dirty bits in
     non-leaf TDP MMU SPTEs if a racing thread replaces a huge SPTE with
     a non-huge SPTE.

   - Use more generic lockdep assertions in paths that don't actually
     care about whether the caller is a reader or a writer.

   - let Xen guests opt out of having PV clock reported as "based on a
     stable TSC", because some of them don't expect the "TSC stable" bit
     (added to the pvclock ABI by KVM, but never set by Xen) to be set.

   - Revert a bogus, made-up nested SVM consistency check for
     TLB_CONTROL.

   - Advertise flush-by-ASID support for nSVM unconditionally, as KVM
     always flushes on nested transitions, i.e. always satisfies flush
     requests. This allows running bleeding edge versions of VMware
     Workstation on top of KVM.

   - Sanity check that the CPU supports flush-by-ASID when enabling SEV
     support.

   - On AMD machines with vNMI, always rely on hardware instead of
     intercepting IRET in some cases to detect unmasking of NMIs

   - Support for virtualizing Linear Address Masking (LAM)

   - Fix a variety of vPMU bugs where KVM fail to stop/reset counters
     and other state prior to refreshing the vPMU model.

   - Fix a double-overflow PMU bug by tracking emulated counter events
     using a dedicated field instead of snapshotting the "previous"
     counter. If the hardware PMC count triggers overflow that is
     recognized in the same VM-Exit that KVM manually bumps an event
     count, KVM would pend PMIs for both the hardware-triggered overflow
     and for KVM-triggered overflow.

   - Turn off KVM_WERROR by default for all configs so that it's not
     inadvertantly enabled by non-KVM developers, which can be
     problematic for subsystems that require no regressions for W=1
     builds.

   - Advertise all of the host-supported CPUID bits that enumerate
     IA32_SPEC_CTRL "features".

   - Don't force a masterclock update when a vCPU synchronizes to the
     current TSC generation, as updating the masterclock can cause
     kvmclock's time to "jump" unexpectedly, e.g. when userspace
     hotplugs a pre-created vCPU.

   - Use RIP-relative address to read kvm_rebooting in the VM-Enter
     fault paths, partly as a super minor optimization, but mostly to
     make KVM play nice with position independent executable builds.

   - Guard KVM-on-HyperV's range-based TLB flush hooks with an #ifdef on
     CONFIG_HYPERV as a minor optimization, and to self-document the
     code.

   - Add CONFIG_KVM_HYPERV to allow disabling KVM support for HyperV
     "emulation" at build time.

  ARM64:

   - LPA2 support, adding 52bit IPA/PA capability for 4kB and 16kB base
     granule sizes. Branch shared with the arm64 tree.

   - Large Fine-Grained Trap rework, bringing some sanity to the
     feature, although there is more to come. This comes with a prefix
     branch shared with the arm64 tree.

   - Some additional Nested Virtualization groundwork, mostly
     introducing the NV2 VNCR support and retargetting the NV support to
     that version of the architecture.

   - A small set of vgic fixes and associated cleanups.

  Loongarch:

   - Optimization for memslot hugepage checking

   - Cleanup and fix some HW/SW timer issues

   - Add LSX/LASX (128bit/256bit SIMD) support

  RISC-V:

   - KVM_GET_REG_LIST improvement for vector registers

   - Generate ISA extension reg_list using macros in get-reg-list
     selftest

   - Support for reporting steal time along with selftest

  s390:

   - Bugfixes

  Selftests:

   - Fix an annoying goof where the NX hugepage test prints out garbage
     instead of the magic token needed to run the test.

   - Fix build errors when a header is delete/moved due to a missing
     flag in the Makefile.

   - Detect if KVM bugged/killed a selftest's VM and print out a helpful
     message instead of complaining that a random ioctl() failed.

   - Annotate the guest printf/assert helpers with __printf(), and fix
     the various bugs that were lurking due to lack of said annotation"

* tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (185 commits)
  x86/kvm: Do not try to disable kvmclock if it was not enabled
  KVM: x86: add missing "depends on KVM"
  KVM: fix direction of dependency on MMU notifiers
  KVM: introduce CONFIG_KVM_COMMON
  KVM: arm64: Add missing memory barriers when switching to pKVM's hyp pgd
  KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache
  RISC-V: KVM: selftests: Add get-reg-list test for STA registers
  RISC-V: KVM: selftests: Add steal_time test support
  RISC-V: KVM: selftests: Add guest_sbi_probe_extension
  RISC-V: KVM: selftests: Move sbi_ecall to processor.c
  RISC-V: KVM: Implement SBI STA extension
  RISC-V: KVM: Add support for SBI STA registers
  RISC-V: KVM: Add support for SBI extension registers
  RISC-V: KVM: Add SBI STA info to vcpu_arch
  RISC-V: KVM: Add steal-update vcpu request
  RISC-V: KVM: Add SBI STA extension skeleton
  RISC-V: paravirt: Implement steal-time support
  RISC-V: Add SBI STA extension definitions
  RISC-V: paravirt: Add skeleton for pv-time support
  RISC-V: KVM: Fix indentation in kvm_riscv_vcpu_set_reg_csr()
  ...
2024-01-17 13:03:37 -08:00
..
book3s powerpc/book3s64: Avoid __pte_protnone() check in __pte_flags_need_flush() 2023-12-07 23:34:11 +11:00
nohash powerpc updates for 6.7 2023-11-03 10:07:39 -10:00
vdso powerpc/64s: Make POWER10 and later use pause_short in cpu_relax loops 2022-09-28 19:22:10 +10:00
8xx_immap.h powerpc/include: Declare mpc8xx_immr in 8xx_immap.h 2023-08-16 23:54:47 +10:00
accounting.h
archrandom.h Bitmap patches for v6.0-rc1 2022-08-07 17:52:35 -07:00
asm-compat.h
asm-const.h
asm-offsets.h
asm-prototypes.h powerpc/64s: early boot machine check handler 2022-09-28 19:22:13 +10:00
asm.h objtool/powerpc: Enable objtool to be built on ppc 2022-11-18 19:00:16 +11:00
async_tx.h
atomic.h locking/atomic: make atomic*_{cmp,}xchg optional 2023-06-05 09:57:14 +02:00
backlight.h
barrier.h powerpc/kcsan: Memory barriers semantics 2023-02-10 22:19:56 +11:00
bitops.h powerpc: implement arch_xor_unlock_is_negative_byte on 32-bit 2023-10-18 14:34:17 -07:00
bootx.h
bpf_perf_event.h powerpc/bpf: Fix use of user_pt_regs in uapi 2022-06-29 20:43:04 +10:00
btext.h
bug.h powerpc/kuap: Simplify KUAP lock/unlock on BOOK3S/32 2023-08-02 22:22:18 +10:00
cache.h powerpc: move the ARCH_DMA_MINALIGN definition to asm/cache.h 2023-06-19 16:19:24 -07:00
cacheflush.h powerpc: implement the new page table range API 2023-08-24 16:20:23 -07:00
cell-pmu.h
cell-regs.h
checksum.h
clocksource.h
cmpxchg.h locking/arch: Rename all internal __xchg() names to __arch_xchg() 2023-04-29 09:08:44 +02:00
code-patching-asm.h
code-patching.h powerpc/code-patching: introduce patch_instructions() 2023-10-23 20:33:19 +11:00
compat.h
context_tracking.h context_tracking: Split user tracking Kconfig 2022-06-29 17:04:09 -07:00
copro.h
cpm1.h powerpc: Remove cpm_dp...() macros 2023-10-20 23:18:07 +11:00
cpm2.h powerpc: Remove cpm_dp...() macros 2023-10-20 23:18:07 +11:00
cpm.h
cpu_has_feature.h
cpu_setup.h powerpc/cputable: Move __cpu_setup() prototypes out of cputable.h 2022-09-26 22:26:49 +10:00
cpufeature.h powerpc: Move Power10 feature PPC_MODULE_FEATURE_P10 2023-04-20 18:20:05 +08:00
cpuidle.h
cputable.h powerpc/82xx: Remove CONFIG_8260 and CONFIG_8272 2023-08-18 17:03:14 +10:00
cputhreads.h
cputime.h powerpc: remove the last remnants of cputime_t 2022-11-24 23:31:48 +11:00
crashdump-ppc64.h
current.h
dbdma.h
dbell.h
dcr-generic.h
dcr-mmio.h
dcr-native.h
dcr-regs.h
dcr.h
debug.h powerpc: Allow clearing and restoring registers independent of saved breakpoint state 2022-11-30 21:46:48 +11:00
delay.h
device.h
disassemble.h
dma-direct.h
dma.h PCI: Move isa_dma_bridge_buggy out of asm/dma.h 2022-07-22 17:24:47 -05:00
drmem.h
dt_cpu_ftrs.h
dtl.h powerpc/pseries: Move hcall_vphn() prototype into vphn.h 2023-08-24 22:33:16 +10:00
edac.h
eeh_event.h
eeh.h
ehv_pic.h
elf.h Revert "powerpc/64s: Remove support for ELFv1 little endian userspace" 2023-07-19 21:28:35 +10:00
elfnote.h
emergency-restart.h
emulated_ops.h
epapr_hcalls.h
exception-64e.h
exception-64s.h
exec.h
extable.h
fadump-internal.h
fadump.h
fb.h powerpc/fb: Call internal __phys_mem_access_prot() in fbdev code 2023-11-06 15:24:52 +11:00
feature-fixups.h powerpc/features: Add capability to update mmu features later 2023-08-02 22:22:17 +10:00
firmware.h powerpc/pseries: Add FW_FEATURE_PLPKS feature flag 2023-04-20 13:21:46 +10:00
fixmap.h powerpc: Untangle fixmap.h and pgtable.h and mmu.h 2023-10-19 17:12:44 +11:00
floppy.h
fsl_gtm.h
fsl_hcalls.h
fsl_lbc.h
fsl_pamu_stash.h
fsl_pm.h
ftrace.h powerpc/ftrace: Fix indentation in ftrace.h 2023-12-13 21:49:22 +11:00
futex.h
grackle.h
guest-state-buffer.h KVM: PPC: Add support for nestedv2 guests 2023-09-14 22:04:24 +10:00
hardirq.h
head-64.h
heathrow.h
highmem.h
hmi.h
hugetlb.h powerpc: Remove CONFIG_PPC_FSL_BOOK3E 2022-09-26 23:00:13 +10:00
hvcall.h powerpc/hvcall: Reorder Nestedv2 hcall opcodes 2023-12-21 22:13:06 +11:00
hvconsole.h
hvcserver.h
hvsi.h
hw_breakpoint.h powerpc/watchpoints: Track perf single step directly on the breakpoint 2023-08-16 23:54:50 +10:00
hw_irq.h Merge branch 'fixes' into next 2023-02-12 22:11:56 +11:00
hydra.h
i8259.h
ibmebus.h powerpc: Explicitly include correct DT includes 2023-08-02 22:22:19 +10:00
icswx.h
idle.h powerpc/pseries: Always inline functions called from cpuidle 2023-04-20 13:21:49 +10:00
imc-pmu.h powerpc: Annotate endianness of various variables and functions 2023-10-19 17:12:47 +11:00
immap_cpm2.h
inst.h powerpc/64: Drop ppc_inst_as_str() 2022-06-29 19:37:07 +10:00
interrupt.h powerpc: Consolidate 32-bit and 64-bit interrupt_enter_prepare 2023-02-10 22:17:35 +11:00
io_event_irq.h
io-defs.h
io-workarounds.h
io.h asm/io: remove unnecessary xlate_dev_mem_ptr() and unxlate_dev_mem_ptr() 2023-11-23 10:37:40 +01:00
iommu.h powerpc: Move DMA64_PROPNAME define to a header 2023-08-18 17:03:15 +10:00
ipic.h
irq_work.h arch: consolidate arch_irq_work_raise prototypes 2023-11-23 11:32:29 +01:00
irq.h nmi_backtrace: allow excluding an arbitrary CPU 2023-08-18 10:19:00 -07:00
irqflags.h powerpc/64: Remove asm interrupt tracing call helpers 2022-12-02 17:54:07 +11:00
isa-bridge.h
jump_label.h
kasan.h kasan, powerpc: don't rename memintrinsics if compiler adds prefixes 2023-03-23 17:18:33 -07:00
Kbuild powerpc: remove <asm/export.h> 2023-08-16 23:54:48 +10:00
kdebug.h
kdump.h
kexec_ranges.h
kexec.h powerpc/fadump: make is_kdump_kernel() return false when fadump is active 2023-09-18 12:23:27 +10:00
keylargo.h
kfence.h powerpc: Make virt_to_pfn() a static inline 2023-08-16 23:54:49 +10:00
kgdb.h powerpc: Change CONFIG_E500 to CONFIG_PPC_E500 2022-09-26 23:00:13 +10:00
kprobes.h kprobes: unify kprobes_exceptions_nofify() prototypes 2023-11-10 19:59:05 +09:00
kup.h powerpc/kuap: Use ASM feature fixups instead of static branches 2023-08-02 22:22:18 +10:00
kvm_asm.h
kvm_book3s_32.h
kvm_book3s_64.h KVM: PPC: Book3S HV nestedv2: Register the VPA with the L0 2023-12-07 23:33:08 +11:00
kvm_book3s_asm.h powerpc/kvm: Remove unused references for MMCR3/SIER2/SIER3 registers 2022-11-24 23:31:47 +11:00
kvm_book3s_uvmem.h
kvm_book3s.h KVM: PPC: Book3S HV nestedv2: Avoid reloading the tb offset 2023-12-07 23:33:07 +11:00
kvm_booke_hv_asm.h
kvm_booke.h KVM: PPC: Introduce FPR/VR accessor functions 2023-09-14 22:04:23 +10:00
kvm_fpu.h
kvm_guest.h
kvm_host.h Merge branch 'kvm-guestmemfd' into HEAD 2023-11-14 08:31:31 -05:00
kvm_para.h
kvm_ppc.h powerpc/kvm: Force cast endianness of KVM shared regs 2023-10-19 17:15:39 +11:00
libata-portmap.h
linkage.h powerpc/Kconfig: Select FUNCTION_ALIGNMENT_4B 2023-12-13 21:49:22 +11:00
livepatch.h livepatch: Remove klp_arch_set_pc() and asm/livepatch.h 2022-05-24 08:46:37 +02:00
local.h locking/local, arch: Rewrite local_add_unless() as a static inline function 2023-10-04 11:38:11 +02:00
lppaca.h powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT 2023-08-24 22:33:17 +10:00
lv1call.h
machdep.h powerpc: Remove file parameter from phys_mem_access_prot() 2023-11-06 15:21:33 +11:00
macio.h powerpc: Explicitly include correct DT includes 2023-08-02 22:22:19 +10:00
mc146818rtc.h
mce.h
mediabay.h
mem_encrypt.h
membarrier.h
mman.h powerpc: Include asm/firmware.h in all users of firmware_has_feature() 2022-06-29 16:45:05 +10:00
mmiowb.h
mmu_context.h powerpc/64s: Use dec_mm_active_cpus helper 2023-08-02 22:22:18 +10:00
mmu.h powerpc/mm: Fix build failures due to arch_reserved_kernel_pages() 2023-12-01 21:15:33 +11:00
mmzone.h powerpc/mm: Fix build failures due to arch_reserved_kernel_pages() 2023-12-01 21:15:33 +11:00
module.h powerpc/module: Remove unused .ftrace.tramp section 2023-08-22 00:09:05 +10:00
module.lds.h
mpc5xxx.h powerpc/mpc5xxx: Switch mpc5xxx_get_bus_frequency() to use fwnode 2022-06-22 12:51:49 +10:00
mpc6xx.h
mpc52xx_psc.h
mpc52xx.h powerpc: Drop MPC5200 LocalPlus bus FIFO driver 2023-05-15 23:25:56 +10:00
mpc85xx.h
mpc5121.h
mpic_msgr.h
mpic_timer.h
mpic.h
msi_bitmap.h
nmi.h powerpc: move arch_trigger_cpumask_backtrace from nmi.h to irq.h 2023-06-23 17:04:04 -07:00
nvram.h
ohare.h
opal-api.h
opal.h powerpc/opal: Annotate out param endianness 2023-10-19 17:16:20 +11:00
paca.h powerpc: Don't include lppaca.h in paca.h 2023-08-24 22:33:16 +10:00
page_32.h powerpc: move the ARCH_DMA_MINALIGN definition to asm/cache.h 2023-06-19 16:19:24 -07:00
page_64.h
page.h powerpc: Make virt_to_pfn() a static inline 2023-08-16 23:54:49 +10:00
papr-sysparm.h powerpc/pseries/papr-sysparm: Expose character device to user space 2023-12-13 21:38:21 +11:00
paravirt_api_clock.h powerpc/pseries: Implement CONFIG_PARAVIRT_TIME_ACCOUNTING 2022-09-05 14:14:02 +10:00
paravirt.h powerpc/sched: Cleanup vcpu_is_preempted() 2023-12-15 13:50:39 +11:00
parport.h
pasemi_dma.h
pci-bridge.h powerpc/iommu: Add iommu_ops to report capabilities and allow blocking domains 2023-03-15 00:51:46 +11:00
pci.h powerpc: Remove file parameter from phys_mem_access_prot() 2023-11-06 15:21:33 +11:00
percpu.h
perf_event_fsl_emb.h
perf_event_server.h
perf_event.h
pgalloc.h powerpc: add pte_free_defer() for pgtables sharing page 2023-08-18 10:12:23 -07:00
pgtable-be-types.h powerpc: Rely on generic definition of hugepd_t and is_hugepd when unused 2022-09-26 20:58:18 +10:00
pgtable-masks.h powerpc: Support execute-only on all powerpc 2023-10-19 17:12:47 +11:00
pgtable-types.h powerpc: Rely on generic definition of hugepd_t and is_hugepd when unused 2022-09-26 20:58:18 +10:00
pgtable.h powerpc: Remove file parameter from phys_mem_access_prot() 2023-11-06 15:21:33 +11:00
pkeys.h
plpar_wrappers.h KVM: PPC: Add support for nestedv2 guests 2023-09-14 22:04:24 +10:00
plpks.h powerpc/pseries: Pass PLPKS password on kexec 2023-02-12 22:12:39 +11:00
pmac_feature.h
pmac_low_i2c.h
pmac_pfunc.h
pmc.h
pmi.h
pnv-ocxl.h
pnv-pci.h
powernv.h
ppc4xx.h
ppc_asm.h powerpc: merge 32-bit and 64-bit _switch implementation 2023-06-15 14:03:55 +10:00
ppc-opcode.h powerpc/inst: add PPC_TLBILX_LPID 2023-08-16 23:54:48 +10:00
ppc-pci.h powerpc/rtas_pci: rename and properly expose config access APIs 2023-11-28 21:49:45 +11:00
probes.h powerpc/ppc-opcode: Define and use PPC_RAW_TRAP() and PPC_RAW_TW() 2022-07-27 21:36:05 +10:00
processor.h powerpc updates for 6.6 2023-08-31 12:43:10 -07:00
prom.h powerpc: export the CPU node count 2022-12-07 20:14:49 +11:00
ps3.h powerpc/ps3: move udbg_shutdown_ps3gelic prototype 2023-11-21 12:06:50 +11:00
ps3av.h powerpc/ps3: remove orphan declarations from ps3av.h 2022-09-15 22:55:46 +10:00
ps3gpu.h
ps3stor.h
pte-walk.h powerpc: Remove find_current_mm_pte() 2022-11-24 23:12:18 +11:00
ptrace.h powerpc/trace: Add support for HAVE_FUNCTION_ARG_ACCESS_API 2023-10-20 17:55:56 +11:00
qspinlock_types.h powerpc/qspinlock: provide accounting and options for sleepy locks 2022-12-02 17:48:50 +11:00
qspinlock.h powerpc/qspinlock: add compile-time tuning adjustments 2022-12-02 17:48:50 +11:00
reg_8xx.h
reg_booke.h powerpc: Change CONFIG_E500 to CONFIG_PPC_E500 2022-09-26 23:00:13 +10:00
reg_fsl_emb.h
reg.h powerpc: Add PVN support for HeXin C2000 processor 2023-12-01 21:15:33 +11:00
rheap.h
rio.h
rtas-types.h powerpc/rtas: ensure 8-byte alignment for struct rtas_args 2023-03-30 23:36:34 +11:00
rtas-work-area.h powerpc/pseries: add RTAS work area allocator 2023-02-13 22:35:02 +11:00
rtas.h powerpc/rtas: Facilitate high-level call sequences 2023-12-13 21:38:20 +11:00
runlatch.h powerpc/64s: Fix irq state management in runlatch functions 2022-09-28 19:22:11 +10:00
seccomp.h
sections.h powerpc/ftrace: Extend ftrace support for large kernels to ppc32 2023-08-22 00:09:05 +10:00
secure_boot.h
security_features.h
secvar.h powerpc/secvar: Allow backend to populate static list of variable names 2023-02-12 22:12:37 +11:00
serial.h
set_memory.h
setjmp.h
setup.h powerpc: Drop zalloc_maybe_bootmem() 2023-08-24 22:33:16 +10:00
sfp-machine.h
shmparam.h
signal.h powerpc/signal: Report minimum signal frame size to userspace via AT_MINSIGSTKSZ 2022-05-19 23:11:26 +10:00
simple_spinlock_types.h
simple_spinlock.h powerpc/kcsan: Properly instrument arch_spin_unlock() 2023-06-09 23:29:51 +10:00
smp.h powerpc/cpu: Mark start_secondary_resume() __noreturn 2023-03-08 08:44:24 -08:00
smu.h
sparsemem.h
spinlock_types.h powerpc/qspinlock: powerpc qspinlock implementation 2022-12-02 17:48:02 +11:00
spinlock.h powerpc/qspinlock: powerpc qspinlock implementation 2022-12-02 17:48:02 +11:00
spu_csa.h
spu_info.h
spu_priv1.h
spu.h
sstep.h
stackprotector.h stackprotector: actually use get_random_canary() 2022-11-18 02:18:10 +01:00
stacktrace.h
static_call.h
string.h kasan, powerpc: don't rename memintrinsics if compiler adds prefixes 2023-03-23 17:18:33 -07:00
svm.h powerpc updates for 5.19 2022-05-28 11:27:17 -07:00
swab.h
swiotlb.h
switch_to.h
synch.h powerpc: Change CONFIG_E500 to CONFIG_PPC_E500 2022-09-26 23:00:13 +10:00
syscall_wrapper.h powerpc: Don't add __powerpc_ prefix to syscall entry points 2022-10-07 00:59:54 +11:00
syscall.h powerpc: Provide syscall wrapper 2022-09-28 19:22:09 +10:00
syscalls_32.h powerpc: Include all arch-specific syscall prototypes 2022-09-28 19:22:08 +10:00
syscalls.h powerpc/32: fix syscall wrappers with 64-bit arguments 2022-11-01 10:24:09 +11:00
task_size_32.h
task_size_64.h
tce.h
thread_info.h Revert "powerpc/64s: Remove support for ELFv1 little endian userspace" 2023-07-19 21:28:35 +10:00
time.h powerpc/pseries: Move dtl scanning and steal time accounting to pseries platform 2022-09-05 14:14:27 +10:00
timex.h
tlb.h mmu_gather: Remove per arch tlb_{start,end}_vma() 2022-07-21 10:50:13 -07:00
tlbflush.h
tm.h
topology.h powerpc: Add HOTPLUG_SMT support 2023-08-02 22:49:43 +10:00
trace_clock.h
trace.h powerpc/tracing: tracepoints for RTAS entry and exit 2023-02-13 22:35:02 +11:00
tsi108_irq.h
tsi108_pci.h
tsi108.h
types.h powerpc: Finalise cleanup around ABI use 2022-05-19 23:11:29 +10:00
uaccess.h powerpc/uaccess: Cast away __user annotation after verification 2023-10-19 17:16:20 +11:00
udbg.h powerpc/udbg: Remove extern function prototypes 2022-09-28 19:22:14 +10:00
uic.h
ultravisor-api.h
ultravisor.h
uninorth.h
unistd.h powerpc: Use generic fallocate compatibility syscall 2022-09-26 23:00:15 +10:00
uprobes.h powerpc/probes: Remove ppc_opcode_t 2022-07-27 21:36:05 +10:00
user.h
vas.h powerpc/powernv/vas: Assign real address to rx_fifo in vas_rx_win_attr 2022-05-22 15:58:27 +10:00
vdso_datapage.h
vdso.h powerpc/vdso: Don't map VDSO at a fixed address on PPC32 2022-08-22 13:36:59 +10:00
vermagic.h powerpc/ftrace: Add support for -fpatchable-function-entry 2023-08-22 00:09:06 +10:00
vga.h
vio.h vio: move to_vio_dev() to use container_of_const() 2023-01-27 13:45:41 +01:00
vmalloc.h
vphn.h powerpc/pseries: Move hcall_vphn() prototype into vphn.h 2023-08-24 22:33:16 +10:00
word-at-a-time.h word-at-a-time: use the same return type for has_zero regardless of endianness 2023-08-02 10:23:36 -07:00
xics.h powerpc/sysdev: remove unused xics_ipi_dispatch() declaration 2022-09-15 22:55:46 +10:00
xive-regs.h
xive.h
xmon.h
xor_altivec.h
xor.h