summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/uapi/asm
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2017-04-20 17:02:21 +0200
committerChristoffer Dall <cdall@linaro.org>2017-04-20 20:17:57 +0200
commit1edb632133efb6226b6bef3e7d9fa8c7134ac4e2 (patch)
tree8451658c150adde8d165549ab5d2f3249344e6b1 /arch/arm/include/uapi/asm
parentARM: hyp-stub: Fix Thumb-2 compilation (diff)
downloadlinux-1edb632133efb6226b6bef3e7d9fa8c7134ac4e2.tar.xz
linux-1edb632133efb6226b6bef3e7d9fa8c7134ac4e2.zip
ARM: KVM: Fix idmap stub entry when running Thumb-2 code
When entering the hyp stub implemented in the idmap, we try to be mindful of the fact that we could be running a Thumb-2 kernel by adding 1 to the address we compute. Unfortunately, the assembler also knows about this trick, and has already generated an address that has bit 0 set in the litteral pool. Our superfluous correction ends up confusing the CPU entierely, as we now branch to the stub in ARM mode instead of Thumb, and on a possibly unaligned address for good measure. From that point, nothing really good happens. The obvious fix in to remove this stupid target PC correction. Fixes: 6bebcecb6c5b ("ARM: KVM: Allow the main HYP code to use the init hyp stub implementation") Reported-by: Christoffer Dall <cdall@linaro.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <cdall@linaro.org>
Diffstat (limited to 'arch/arm/include/uapi/asm')
0 files changed, 0 insertions, 0 deletions