mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 03:24:19 +02:00
KVM: arm64: Populate PAR_EL1 with 52bit addresses
Expand the output address populated in PAR_EL1 to 52bit addresses. Reviewed-by: Oliver Upton <oliver.upton@linux.dev> Signed-off-by: Marc Zyngier <maz@kernel.org>
This commit is contained in:
parent
c0cc438046
commit
dd82412c2b
|
|
@ -844,7 +844,7 @@ static u64 compute_par_s1(struct kvm_vcpu *vcpu, struct s1_walk_info *wi,
|
|||
} else if (wr->level == S1_MMU_DISABLED) {
|
||||
/* MMU off or HCR_EL2.DC == 1 */
|
||||
par = SYS_PAR_EL1_NSE;
|
||||
par |= wr->pa & GENMASK_ULL(47, 12);
|
||||
par |= wr->pa & SYS_PAR_EL1_PA;
|
||||
|
||||
if (wi->regime == TR_EL10 &&
|
||||
(__vcpu_sys_reg(vcpu, HCR_EL2) & HCR_DC)) {
|
||||
|
|
@ -877,7 +877,7 @@ static u64 compute_par_s1(struct kvm_vcpu *vcpu, struct s1_walk_info *wi,
|
|||
mair = MEMATTR(NC, NC);
|
||||
|
||||
par |= FIELD_PREP(SYS_PAR_EL1_ATTR, mair);
|
||||
par |= wr->pa & GENMASK_ULL(47, 12);
|
||||
par |= wr->pa & SYS_PAR_EL1_PA;
|
||||
|
||||
sh = compute_s1_sh(wi, wr, mair);
|
||||
par |= FIELD_PREP(SYS_PAR_EL1_SH, sh);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user