]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ARM: virt: simplify __hyp_stub_install epilog
authorMarc Zyngier <marc.zyngier@arm.com>
Fri, 4 Jan 2013 17:44:15 +0000 (17:44 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Feb 2013 00:27:00 +0000 (18:27 -0600)
commit9e5c3e9345afb0c648735c0081dbc79844e7e175
tree62a7d8df8231577f627293fd1b25fec75fe68edb
parent7ea563f6289e1c40b56bbb785964b584f3bbf015
ARM: virt: simplify __hyp_stub_install epilog

commit d01723479e6a6c70c83295f7847477a016d5e14a upstream.

__hyp_stub_install duplicates quite a bit of safe_svcmode_maskall
by forcing the CPU back to SVC. This is unnecessary, as
safe_svcmode_maskall is called just after.

Furthermore, the way we build SPSR_hyp is buggy as we fail to mask
the interrupts, leading to interesting behaviours on TC2 + UEFI.

The fix is to simply remove this code and rely on safe_svcmode_maskall
to do the right thing.

Reviewed-by: Dave Martin <dave.martin@linaro.org>
Reported-by: Harry Liebel <harry.liebel@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm/kernel/hyp-stub.S