diff options
| author | Oliver Upton <oupton@kernel.org> | 2026-07-21 11:26:04 -0700 |
|---|---|---|
| committer | Oliver Upton <oupton@kernel.org> | 2026-07-21 11:26:04 -0700 |
| commit | 6010db0e23f52e178e3f6abe248efa4671c602c1 (patch) | |
| tree | 3b4984bfd87989d5ec5dce1436997c8c704daefe | |
| parent | 7bb0f66cebde0bc2d9242eec92841e2d37cdf9f6 (diff) | |
| parent | 596289fe4836067b0320c80a9ab0101b9f7f9328 (diff) | |
| download | linux-next-6010db0e23f52e178e3f6abe248efa4671c602c1.tar.gz linux-next-6010db0e23f52e178e3f6abe248efa4671c602c1.zip | |
Merge branch 'kvm-arm64/pkvm-7.3' into kvmarm/next
* kvm-arm64/pkvm-7.3:
: pKVM updates for 7.3
:
: - Avoid name collision on trace_clock() when CONFIG_NVHE_EL2_TRACING is
: disabled (Mostafa Saleh)
:
: - Clean up state tracking for whether the EL2 shadow VM has been
: created (Fuad Tabba)
:
: - Synchronize SCTLR_EL1 when injecting an exception to use current
: PAN/SSBS state (Fuad Tabba)
KVM: arm64: Sync SCTLR_EL1 when injecting an exception into a pVM
Signed-off-by: Oliver Upton <oupton@kernel.org>
| -rw-r--r-- | arch/arm64/kvm/hyp/nvhe/sys_regs.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm64/kvm/hyp/nvhe/sys_regs.c b/arch/arm64/kvm/hyp/nvhe/sys_regs.c index 8c3fbb413a06..7608cc4030b8 100644 --- a/arch/arm64/kvm/hyp/nvhe/sys_regs.c +++ b/arch/arm64/kvm/hyp/nvhe/sys_regs.c @@ -257,10 +257,11 @@ static void inject_sync64(struct kvm_vcpu *vcpu, u64 esr) *vcpu_cpsr(vcpu) = read_sysreg_el2(SYS_SPSR); /* - * Make sure we have the latest update to VBAR_EL1, as pKVM - * handles traps very early, before sysregs are resync'ed + * Sync VBAR_EL1 and SCTLR_EL1, both read by enter_exception64(), + * as pKVM handles traps before sysregs are resync'ed. */ __vcpu_assign_sys_reg(vcpu, VBAR_EL1, read_sysreg_el1(SYS_VBAR)); + __vcpu_assign_sys_reg(vcpu, SCTLR_EL1, read_sysreg_el1(SYS_SCTLR)); kvm_pend_exception(vcpu, EXCEPT_AA64_EL1_SYNC); |
