public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/20] arm64: Handle PSCI calls in userspace
@ 2023-06-20 16:33 Oliver Upton
  2023-06-20 16:33 ` [PATCH v2 01/20] update_headers: Use a list for arch-generic headers Oliver Upton
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: Oliver Upton @ 2023-06-20 16:33 UTC (permalink / raw)
  To: kvmarm
  Cc: kvm, Marc Zyngier, James Morse, Suzuki K Poulose, Zenghui Yu,
	Will Deacon, Julien Thierry, Salil Mehta, Oliver Upton

v2 of the series for doing PSCI calls in userspace.

Changes since v1 [*]:
 - Avoid successive calls to KVM_ARM_VCPU_FINALIZE (Joey)
 - Clear the 'paused' state from calling vCPU in kvm_cpu__continue_vm()
   (Shaoqin)

[*] https://lore.kernel.org/kvmarm/20230526221712.317287-1-oliver.upton@linux.dev/

Oliver Upton (20):
  update_headers: Use a list for arch-generic headers
  update_headers: Add missing entries to list of headers to copy
  Copy 64-bit alignment attrtibutes from Linux 6.4-rc1
  Update headers with Linux 6.4-rc1
  Import arm-smccc.h from Linux 6.4-rc1
  aarch64: Copy cputype.h from Linux 6.4-rc1
  arm: Stash kvm_vcpu_init for later use
  arm: Use KVM_SET_MP_STATE ioctl to power off non-boot vCPUs
  aarch64: Expose ARM64_CORE_REG() for general use
  arm: Generalize execution state specific VM initialization
  Add helpers to pause the VM from vCPU thread
  aarch64: Add support for finding vCPU for given MPIDR
  aarch64: Add skeleton implementation for PSCI
  aarch64: psci: Implement CPU_SUSPEND
  aarch64: psci: Implement CPU_OFF
  aarch64: psci: Implement CPU_ON
  aarch64: psci: Implement AFFINITY_INFO
  aarch64: psci: Implement MIGRATE_INFO_TYPE
  aarch64: psci: Implement SYSTEM_{OFF,RESET}
  aarch64: smccc: Start sending PSCI to userspace

 Makefile                                  |   4 +-
 arm/aarch32/include/kvm/kvm-arch.h        |   2 +-
 arm/aarch32/kvm-cpu.c                     |   5 +
 arm/aarch64/include/asm/cputype.h         | 186 +++++
 arm/aarch64/include/asm/kvm.h             |  38 +
 arm/aarch64/include/asm/smccc.h           |  65 ++
 arm/aarch64/include/kvm/kvm-arch.h        |   2 +-
 arm/aarch64/include/kvm/kvm-config-arch.h |   6 +-
 arm/aarch64/include/kvm/kvm-cpu-arch.h    |  28 +-
 arm/aarch64/kvm-cpu.c                     |  48 +-
 arm/aarch64/kvm.c                         |  25 +-
 arm/aarch64/psci.c                        | 207 +++++
 arm/aarch64/smccc.c                       |  81 ++
 arm/include/arm-common/kvm-arch.h         |   2 +
 arm/include/arm-common/kvm-config-arch.h  |   1 +
 arm/include/arm-common/kvm-cpu-arch.h     |   2 +-
 arm/kvm-cpu.c                             |  21 +-
 arm/kvm.c                                 |   2 +-
 include/kvm/kvm-cpu.h                     |   3 +
 include/linux/arm-smccc.h                 | 240 ++++++
 include/linux/kvm.h                       |  55 +-
 include/linux/psci.h                      |  47 ++
 include/linux/types.h                     |  13 +
 include/linux/vfio.h                      | 920 +++++++++++++++++++++-
 include/linux/vhost.h                     | 186 ++---
 include/linux/virtio_blk.h                | 105 +++
 include/linux/virtio_net.h                |   4 +
 kvm-cpu.c                                 |  16 +
 riscv/include/asm/kvm.h                   |   3 +
 util/update_headers.sh                    |  25 +-
 x86/include/asm/kvm.h                     |  50 +-
 31 files changed, 2213 insertions(+), 179 deletions(-)
 create mode 100644 arm/aarch64/include/asm/cputype.h
 create mode 100644 arm/aarch64/include/asm/smccc.h
 create mode 100644 arm/aarch64/psci.c
 create mode 100644 arm/aarch64/smccc.c
 create mode 100644 include/linux/arm-smccc.h


base-commit: 3b1cdcf9e78f7d36f0cca805c4172bba53779b69
-- 
2.41.0.162.gfafddb0af9-goog


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-06-20 16:36 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-20 16:33 [PATCH v2 00/20] arm64: Handle PSCI calls in userspace Oliver Upton
2023-06-20 16:33 ` [PATCH v2 01/20] update_headers: Use a list for arch-generic headers Oliver Upton
2023-06-20 16:33 ` [PATCH v2 02/20] update_headers: Add missing entries to list of headers to copy Oliver Upton
2023-06-20 16:33 ` [PATCH v2 03/20] Copy 64-bit alignment attrtibutes from Linux 6.4-rc1 Oliver Upton
2023-06-20 16:33 ` [PATCH v2 04/20] Update headers with " Oliver Upton
2023-06-20 16:33 ` [PATCH v2 05/20] Import arm-smccc.h from " Oliver Upton
2023-06-20 16:33 ` [PATCH v2 06/20] aarch64: Copy cputype.h " Oliver Upton
2023-06-20 16:33 ` [PATCH v2 07/20] arm: Stash kvm_vcpu_init for later use Oliver Upton
2023-06-20 16:33 ` [PATCH v2 08/20] arm: Use KVM_SET_MP_STATE ioctl to power off non-boot vCPUs Oliver Upton
2023-06-20 16:33 ` [PATCH v2 09/20] aarch64: Expose ARM64_CORE_REG() for general use Oliver Upton
2023-06-20 16:33 ` [PATCH v2 10/20] arm: Generalize execution state specific VM initialization Oliver Upton
2023-06-20 16:33 ` [PATCH v2 11/20] Add helpers to pause the VM from vCPU thread Oliver Upton
2023-06-20 16:33 ` [PATCH v2 12/20] aarch64: Add support for finding vCPU for given MPIDR Oliver Upton
2023-06-20 16:33 ` [PATCH v2 13/20] aarch64: Add skeleton implementation for PSCI Oliver Upton
2023-06-20 16:33 ` [PATCH v2 14/20] aarch64: psci: Implement CPU_SUSPEND Oliver Upton
2023-06-20 16:33 ` [PATCH v2 15/20] aarch64: psci: Implement CPU_OFF Oliver Upton
2023-06-20 16:33 ` [PATCH v2 16/20] aarch64: psci: Implement CPU_ON Oliver Upton
2023-06-20 16:33 ` [PATCH v2 17/20] aarch64: psci: Implement AFFINITY_INFO Oliver Upton
2023-06-20 16:33 ` [PATCH v2 18/20] aarch64: psci: Implement MIGRATE_INFO_TYPE Oliver Upton
2023-06-20 16:33 ` [PATCH v2 19/20] aarch64: psci: Implement SYSTEM_{OFF,RESET} Oliver Upton
2023-06-20 16:35 ` [PATCH v2 20/20] aarch64: smccc: Start sending PSCI to userspace Oliver Upton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox