All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH kvmtool v2 0/9] arm: Drop support for 32-bit kvmtool
@ 2025-04-04 16:52 Oliver Upton
  2025-04-04 16:52 ` [PATCH kvmtool v2 1/9] Drop support for 32-bit arm Oliver Upton
                   ` (10 more replies)
  0 siblings, 11 replies; 15+ messages in thread
From: Oliver Upton @ 2025-04-04 16:52 UTC (permalink / raw)
  To: kvmarm
  Cc: kvm, Will Deacon, Julien Thierry, Marc Zyngier, Alexandru Elisei,
	Andre Przywara, Oliver Upton

v1: https://lore.kernel.org/kvmarm/20250325213939.2414498-1-oliver.upton@linux.dev/

v1 -> v2:
 - Move headers under arm64/include/kvm similar to other arches (Alex)

Oliver Upton (9):
  Drop support for 32-bit arm
  arm64: Move arm64-only features into main directory
  arm64: Combine kvm.c
  arm64: Merge kvm-cpu.c
  arm64: Combine kvm-config-arch.h
  arm64: Move remaining kvm/* headers
  arm64: Move asm headers
  arm64: Rename top-level directory
  arm64: Get rid of the 'arm-common' include directory

 INSTALL                                       |   9 +-
 Makefile                                      |  40 +--
 arm/aarch32/arm-cpu.c                         |  50 ---
 arm/aarch32/include/asm/kernel.h              |   8 -
 arm/aarch32/include/asm/kvm.h                 | 311 ------------------
 arm/aarch32/include/kvm/barrier.h             |  10 -
 arm/aarch32/include/kvm/fdt-arch.h            |   6 -
 arm/aarch32/include/kvm/kvm-arch.h            |  18 -
 arm/aarch32/include/kvm/kvm-config-arch.h     |   8 -
 arm/aarch32/include/kvm/kvm-cpu-arch.h        |  24 --
 arm/aarch32/kvm-cpu.c                         | 132 --------
 arm/aarch32/kvm.c                             |  14 -
 arm/aarch64/include/kvm/fdt-arch.h            |   6 -
 arm/aarch64/include/kvm/kvm-arch.h            |  22 --
 arm/aarch64/include/kvm/kvm-config-arch.h     |  29 --
 arm/aarch64/include/kvm/kvm-cpu-arch.h        |  19 --
 arm/aarch64/kvm.c                             | 212 ------------
 arm/kvm-cpu.c                                 | 153 ---------
 {arm/aarch64 => arm64}/arm-cpu.c              |   5 +-
 {arm => arm64}/fdt.c                          |   5 +-
 {arm => arm64}/gic.c                          |   3 +-
 {arm => arm64}/gicv2m.c                       |   3 +-
 {arm/aarch64 => arm64}/include/asm/image.h    |   0
 {arm/aarch64 => arm64}/include/asm/kernel.h   |   0
 {arm/aarch64 => arm64}/include/asm/kvm.h      |   0
 {arm/aarch64 => arm64}/include/asm/pmu.h      |   0
 .../include/asm/sve_context.h                 |   0
 {arm/aarch64 => arm64}/include/kvm/barrier.h  |   0
 .../include/kvm}/fdt-arch.h                   |   0
 .../arm-common => arm64/include/kvm}/gic.h    |   0
 .../include/kvm}/kvm-arch.h                   |   8 +-
 .../include/kvm}/kvm-config-arch.h            |  24 +-
 .../include/kvm}/kvm-cpu-arch.h               |  10 +-
 .../pci.h => arm64/include/kvm/pci-arch.h     |   0
 .../arm-common => arm64/include/kvm}/timer.h  |   0
 {arm => arm64}/ioport.c                       |   0
 {arm/aarch64 => arm64}/kvm-cpu.c              | 289 ++++++++++++----
 {arm => arm64}/kvm.c                          | 210 +++++++++++-
 {arm => arm64}/pci.c                          |   5 +-
 {arm/aarch64 => arm64}/pmu.c                  |   3 +-
 {arm/aarch64 => arm64}/pvtime.c               |   0
 {arm => arm64}/timer.c                        |   5 +-
 builtin-run.c                                 |   2 +-
 hw/cfi_flash.c                                |   2 +-
 hw/rtc.c                                      |   2 +-
 hw/serial.c                                   |   2 +-
 virtio/core.c                                 |   2 +-
 47 files changed, 498 insertions(+), 1153 deletions(-)
 delete mode 100644 arm/aarch32/arm-cpu.c
 delete mode 100644 arm/aarch32/include/asm/kernel.h
 delete mode 100644 arm/aarch32/include/asm/kvm.h
 delete mode 100644 arm/aarch32/include/kvm/barrier.h
 delete mode 100644 arm/aarch32/include/kvm/fdt-arch.h
 delete mode 100644 arm/aarch32/include/kvm/kvm-arch.h
 delete mode 100644 arm/aarch32/include/kvm/kvm-config-arch.h
 delete mode 100644 arm/aarch32/include/kvm/kvm-cpu-arch.h
 delete mode 100644 arm/aarch32/kvm-cpu.c
 delete mode 100644 arm/aarch32/kvm.c
 delete mode 100644 arm/aarch64/include/kvm/fdt-arch.h
 delete mode 100644 arm/aarch64/include/kvm/kvm-arch.h
 delete mode 100644 arm/aarch64/include/kvm/kvm-config-arch.h
 delete mode 100644 arm/aarch64/include/kvm/kvm-cpu-arch.h
 delete mode 100644 arm/aarch64/kvm.c
 delete mode 100644 arm/kvm-cpu.c
 rename {arm/aarch64 => arm64}/arm-cpu.c (96%)
 rename {arm => arm64}/fdt.c (99%)
 rename {arm => arm64}/gic.c (99%)
 rename {arm => arm64}/gicv2m.c (99%)
 rename {arm/aarch64 => arm64}/include/asm/image.h (100%)
 rename {arm/aarch64 => arm64}/include/asm/kernel.h (100%)
 rename {arm/aarch64 => arm64}/include/asm/kvm.h (100%)
 rename {arm/aarch64 => arm64}/include/asm/pmu.h (100%)
 rename {arm/aarch64 => arm64}/include/asm/sve_context.h (100%)
 rename {arm/aarch64 => arm64}/include/kvm/barrier.h (100%)
 rename {arm/include/arm-common => arm64/include/kvm}/fdt-arch.h (100%)
 rename {arm/include/arm-common => arm64/include/kvm}/gic.h (100%)
 rename {arm/include/arm-common => arm64/include/kvm}/kvm-arch.h (96%)
 rename {arm/include/arm-common => arm64/include/kvm}/kvm-config-arch.h (54%)
 rename {arm/include/arm-common => arm64/include/kvm}/kvm-cpu-arch.h (82%)
 rename arm/include/arm-common/pci.h => arm64/include/kvm/pci-arch.h (100%)
 rename {arm/include/arm-common => arm64/include/kvm}/timer.h (100%)
 rename {arm => arm64}/ioport.c (100%)
 rename {arm/aarch64 => arm64}/kvm-cpu.c (70%)
 rename {arm => arm64}/kvm.c (59%)
 rename {arm => arm64}/pci.c (98%)
 rename {arm/aarch64 => arm64}/pmu.c (99%)
 rename {arm/aarch64 => arm64}/pvtime.c (100%)
 rename {arm => arm64}/timer.c (94%)


base-commit: e48563f5c4a48fe6a6bc2a98a9a7c84a10f043be
-- 
2.39.5


^ permalink raw reply	[flat|nested] 15+ messages in thread
* [PATCH v4 00/19] KVM: arm64: Debug cleanups
@ 2024-12-19 22:40 Oliver Upton
  2024-12-20  9:28 ` Marc Zyngier
  0 siblings, 1 reply; 15+ messages in thread
From: Oliver Upton @ 2024-12-19 22:40 UTC (permalink / raw)
  To: kvmarm
  Cc: Marc Zyngier, Joey Gouly, Suzuki K Poulose, Zenghui Yu,
	Mingwei Zhang, Colton Lewis, Raghavendra Rao Ananta, James Clark,
	Oliver Upton

Hopefully the last spin! Addressed some review comments, and snuck in
one more cleanup to the sysreg handlers since that was quite a mess too.

v3 -> v4:
 - Collect Tested-by tags from James (thanks!)
 - Delete stray if condition, second attempt (Marc)
 - Hoist writes to MDCR_EL2 into kvm_arm_setup_mdcr_el2()
 - Get rid of the sysreg accessor mess for DBGxVR/DBGxCR

v3: https://lore.kernel.org/kvmarm/20241209180926.2161373-1-oliver.upton@linux.dev/

Oliver Upton (19):
  KVM: arm64: Drop MDSCR_EL1_DEBUG_MASK
  KVM: arm64: Get rid of __kvm_get_mdcr_el2() and related warts
  KVM: arm64: Track presence of SPE/TRBE in kvm_host_data instead of
    vCPU
  KVM: arm64: Move host SME/SVE tracking flags to host data
  KVM: arm64: Write MDCR_EL2 directly from kvm_arm_setup_mdcr_el2()
  KVM: arm64: Evaluate debug owner at vcpu_load()
  KVM: arm64: Clean up KVM_SET_GUEST_DEBUG handler
  KVM: arm64: Select debug state to save/restore based on debug owner
  KVM: arm64: Remove debug tracepoints
  KVM: arm64: Remove vestiges of debug_ptr
  KVM: arm64: Use debug_owner to track if debug regs need save/restore
  KVM: arm64: Reload vCPU for accesses to OSLAR_EL1
  KVM: arm64: Compute MDCR_EL2 at vcpu_load()
  KVM: arm64: Don't hijack guest context MDSCR_EL1
  KVM: arm64: Manage software step state at load/put
  KVM: arm64: nv: Honor MDCR_EL2.TDE routing for debug exceptions
  KVM: arm64: Avoid reading ID_AA64DFR0_EL1 for debug save/restore
  KVM: arm64: Fold DBGxVR/DBGxCR accessors into common set
  KVM: arm64: Promote guest ownership for DBGxVR/DBGxCR reads

 arch/arm64/include/asm/kvm_asm.h           |   5 +-
 arch/arm64/include/asm/kvm_host.h          |  94 ++---
 arch/arm64/include/asm/kvm_nested.h        |   1 +
 arch/arm64/kvm/arm.c                       |  14 +-
 arch/arm64/kvm/debug.c                     | 380 +++++++--------------
 arch/arm64/kvm/emulate-nested.c            |  23 +-
 arch/arm64/kvm/fpsimd.c                    |  12 +-
 arch/arm64/kvm/guest.c                     |  31 +-
 arch/arm64/kvm/handle_exit.c               |   5 +-
 arch/arm64/kvm/hyp/include/hyp/debug-sr.h  |  42 +--
 arch/arm64/kvm/hyp/include/hyp/sysreg-sr.h |  43 ++-
 arch/arm64/kvm/hyp/nvhe/debug-sr.c         |  13 +-
 arch/arm64/kvm/hyp/nvhe/hyp-main.c         |   8 -
 arch/arm64/kvm/hyp/vhe/debug-sr.c          |   5 -
 arch/arm64/kvm/sys_regs.c                  | 249 ++++----------
 arch/arm64/kvm/trace_handle_exit.h         |  75 ----
 16 files changed, 350 insertions(+), 650 deletions(-)


base-commit: 78d4f34e2115b517bcbfe7ec0d018bbbb6f9b0b8
-- 
2.39.5


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

end of thread, other threads:[~2025-04-17 14:27 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-04 16:52 [PATCH kvmtool v2 0/9] arm: Drop support for 32-bit kvmtool Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 1/9] Drop support for 32-bit arm Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 2/9] arm64: Move arm64-only features into main directory Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 3/9] arm64: Combine kvm.c Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 4/9] arm64: Merge kvm-cpu.c Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 5/9] arm64: Combine kvm-config-arch.h Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 6/9] arm64: Move remaining kvm/* headers Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 7/9] arm64: Move asm headers Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 8/9] arm64: Rename top-level directory Oliver Upton
2025-04-04 16:52 ` [PATCH kvmtool v2 9/9] arm64: Get rid of the 'arm-common' include directory Oliver Upton
2025-04-04 16:52 ` [PATCH v4 00/19] KVM: arm64: Debug cleanups Oliver Upton
2025-04-04 16:55   ` Oliver Upton
2025-04-17 14:27 ` [PATCH kvmtool v2 0/9] arm: Drop support for 32-bit kvmtool Will Deacon
  -- strict thread matches above, loose matches on Subject: below --
2024-12-19 22:40 [PATCH v4 00/19] KVM: arm64: Debug cleanups Oliver Upton
2024-12-20  9:28 ` Marc Zyngier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.