diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2019-01-19 15:29:54 +0000 |
---|---|---|
committer | Marc Zyngier <marc.zyngier@arm.com> | 2019-02-19 21:05:35 +0000 |
commit | 32f139551954512bfdf9d558341af453bb8b12b4 (patch) | |
tree | d7fc878ae67aab3ab2300b3ca72e51f03ff3482b /arch/arm/kvm | |
parent | d18232ea8a9480606c53e91d7e2d062c3c151815 (diff) | |
download | lwn-32f139551954512bfdf9d558341af453bb8b12b4.tar.gz lwn-32f139551954512bfdf9d558341af453bb8b12b4.zip |
arm/arm64: KVM: Statically configure the host's view of MPIDR
We currently eagerly save/restore MPIDR. It turns out to be
slightly pointless:
- On the host, this value is known as soon as we're scheduled on a
physical CPU
- In the guest, this value cannot change, as it is set by KVM
(and this is a read-only register)
The result of the above is that we can perfectly avoid the eager
saving of MPIDR_EL1, and only keep the restore. We just have
to setup the host contexts appropriately at boot time.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@arm.com>
Diffstat (limited to 'arch/arm/kvm')
-rw-r--r-- | arch/arm/kvm/hyp/cp15-sr.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/arm/kvm/hyp/cp15-sr.c b/arch/arm/kvm/hyp/cp15-sr.c index c4782812714c..8bf895ec6e04 100644 --- a/arch/arm/kvm/hyp/cp15-sr.c +++ b/arch/arm/kvm/hyp/cp15-sr.c @@ -27,7 +27,6 @@ static u64 *cp15_64(struct kvm_cpu_context *ctxt, int idx) void __hyp_text __sysreg_save_state(struct kvm_cpu_context *ctxt) { - ctxt->cp15[c0_MPIDR] = read_sysreg(VMPIDR); ctxt->cp15[c0_CSSELR] = read_sysreg(CSSELR); ctxt->cp15[c1_SCTLR] = read_sysreg(SCTLR); ctxt->cp15[c1_CPACR] = read_sysreg(CPACR); |