arch-arm: ArmISA::clear, inval TLB cached miscregs
authorAdrian Herrera <adrian.herrera@arm.com>
Mon, 17 Feb 2020 16:13:34 +0000 (16:13 +0000)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Wed, 19 Feb 2020 17:32:46 +0000 (17:32 +0000)
commitb03020435dc244f5d0a8edbe31b19421a4619542
treebb142ff349acdd3f0d20aa75b2d0b8eb920e0701
parentd266a37e5e92a0a6a7f41618150de3835cd6ac30
arch-arm: ArmISA::clear, inval TLB cached miscregs

ArmISA::clear resets the value of the architecture registers. Some of
these are cached in ArmTLB, including SCTLR. This patch invalidates the
cached copies on clear; this fixes a bug when resetting CPU cores by which
the cached SCTLR was used and SCTLR.M was set, resulting in non-arch
compliant reset behaviour and a PA being treated as a VA on translation.

Change-Id: I8d4eeeaf807325bd7b300a7a317abfa40ad23c87
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/25466
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/arch/arm/isa.cc
src/arch/arm/isa.hh