Commit f1edb159 authored by Fuad Tabba's avatar Fuad Tabba Committed by Oliver Upton
Browse files

arm64: vgic-v2: Fix guest endianness check in hVHE mode



In hVHE when running at the hypervisor, SCTLR_EL1 refers to the
hypervisor's System Control Register rather than the guest's. Make sure
to access the guest's register to determine its endianness.

Reported-by: default avatarWill Deacon <will@kernel.org>
Signed-off-by: default avatarFuad Tabba <tabba@google.com>
Link: https://lore.kernel.org/r/20250807120133.871892-4-tabba@google.com


Signed-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
parent 798eb597
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ static bool __is_be(struct kvm_vcpu *vcpu)
	if (vcpu_mode_is_32bit(vcpu))
		return !!(read_sysreg_el2(SYS_SPSR) & PSR_AA32_E_BIT);

	return !!(read_sysreg(SCTLR_EL1) & SCTLR_ELx_EE);
	return !!(read_sysreg_el1(SYS_SCTLR) & SCTLR_ELx_EE);
}

/*