[RFC PATCH 0/5] arm/arm64: Making HYP vgic/timer save/restore common

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With the current state of the C conversion of arm and arm64 world
switches, we are still unable to share some of the most obvious
candidates (GIC and timer save/restore). In order to reduce the bloat,
let's move these files to a common location (virt/kvm/arm/hyp).

The changes are extremely mechanical, with a small hack to deal with
system register names on the 32bit side (I've decided to align on the
64bit names).

I'd like to know what people think of the common location. Does it
makes sense to have a "hyp" subdirectory to indicate that this is not
"normal" kernel code?

These patches are on top of 4.5-rc1, plus the VHE and 32bit WS rewrite
patches, and I've pushed out a branch at

git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git kvm-arm64/mov-hyp

Marc Zyngier (5):
  arm64: KVM: Move kvm/hyp/hyp.h to include/asm/kvm_hyp.h
  arm64: KVM: Move vgic-v2 and timer save/restore to virt/kvm/arm/hyp
  ARM: KVM: Move kvm/hyp/hyp.h to include/asm/kvm_hyp.h
  ARM: KVM: Use common version of vgic-v2-sr.c
  ARM: KVM: Use common version of timer-sr.c

 arch/arm/{kvm/hyp/hyp.h => include/asm/kvm_hyp.h}  |  9 +++
 arch/arm/kvm/hyp/Makefile                          |  7 +-
 arch/arm/kvm/hyp/banked-sr.c                       |  2 +-
 arch/arm/kvm/hyp/cp15-sr.c                         |  2 +-
 arch/arm/kvm/hyp/switch.c                          |  2 +-
 arch/arm/kvm/hyp/timer-sr.c                        | 71 ------------------
 arch/arm/kvm/hyp/tlb.c                             |  2 +-
 arch/arm/kvm/hyp/vgic-v2-sr.c                      | 84 ----------------------
 .../arm64/{kvm/hyp/hyp.h => include/asm/kvm_hyp.h} |  0
 arch/arm64/kvm/hyp/Makefile                        |  7 +-
 arch/arm64/kvm/hyp/debug-sr.c                      |  4 +-
 arch/arm64/kvm/hyp/switch.c                        |  3 +-
 arch/arm64/kvm/hyp/sysreg-sr.c                     |  4 +-
 arch/arm64/kvm/hyp/tlb.c                           |  2 +-
 arch/arm64/kvm/hyp/vgic-v3-sr.c                    |  4 +-
 {arch/arm64/kvm => virt/kvm/arm}/hyp/timer-sr.c    |  4 +-
 {arch/arm64/kvm => virt/kvm/arm}/hyp/vgic-v2-sr.c  |  4 +-
 17 files changed, 30 insertions(+), 181 deletions(-)
 rename arch/arm/{kvm/hyp/hyp.h => include/asm/kvm_hyp.h} (93%)
 delete mode 100644 arch/arm/kvm/hyp/timer-sr.c
 delete mode 100644 arch/arm/kvm/hyp/vgic-v2-sr.c
 rename arch/arm64/{kvm/hyp/hyp.h => include/asm/kvm_hyp.h} (100%)
 rename {arch/arm64/kvm => virt/kvm/arm}/hyp/timer-sr.c (97%)
 rename {arch/arm64/kvm => virt/kvm/arm}/hyp/vgic-v2-sr.c (98%)

-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux