[PATCH v2 0/5] KVM: arm64: Reorganise vcpu first run
Marc Zyngier
maz at kernel.org
Mon Oct 18 14:11:53 PDT 2021
This is v2 of this series reworking the vcpu first run.
KVM/arm64 relies heavily on a bunch of things to be done on the first
run of the vcpu. We also do a bunch of things on PID change. It turns
out that these two things are pretty similar (the first PID change is
also the first run).
This small series aims at simplifying all that, and to get rid of the
vcpu->arch.has_run_once state. On top of being a decent cleanup, it
also results in a minor performance improvement (my Debian installer
on M1 consistently went from 2:23 down to 2:22, a ~0.6% reduction in
execution time).
* From v1 [1]:
- Moved the kvm_vcpu_initialized() check into kvm_vcpu_first_run_init()
- Reorganise the series so that the userspace irqchip static key
change appears earlier
- Collected Andrew's RBs
[1] https://lore.kernel/org/r/20211015090822.2994920-1-maz@kernel.org
Marc Zyngier (5):
KVM: arm64: Move SVE state mapping at HYP to finalize-time
KVM: arm64: Move kvm_arch_vcpu_run_pid_change() out of line
KVM: arm64: Restructure the point where has_run_once is advertised
KVM: arm64: Merge kvm_arch_vcpu_run_pid_change() and
kvm_vcpu_first_run_init()
KVM: arm64: Drop vcpu->arch.has_run_once for vcpu->pid
arch/arm64/include/asm/kvm_host.h | 12 ++-----
arch/arm64/kvm/arm.c | 57 +++++++++++++++++--------------
arch/arm64/kvm/fpsimd.c | 11 ------
arch/arm64/kvm/reset.c | 11 +++++-
arch/arm64/kvm/vgic/vgic-init.c | 2 +-
5 files changed, 46 insertions(+), 47 deletions(-)
--
2.30.2
More information about the linux-arm-kernel
mailing list