]> xenbits.xensource.com Git - xen.git/commit
arm: traps: handle SMC32 in check_conditional_instr()
authorVolodymyr Babchuk <volodymyr_babchuk@epam.com>
Wed, 16 Aug 2017 18:44:57 +0000 (21:44 +0300)
committerStefano Stabellini <sstabellini@kernel.org>
Fri, 18 Aug 2017 17:27:56 +0000 (10:27 -0700)
commit7f86858186f4932ceba91f731337e0ef536d6cd0
tree4cd3654ffb818a4e3edcce285f1a2663904f514b
parent8604e12694fef08494c2e15fd85acd92dddd8111
arm: traps: handle SMC32 in check_conditional_instr()

On ARMv8 architecture we need to ensure that conditional check was passed
for a trapped SMC instruction that originates from AArch32 state
(ARM DDI 0487B.a page D7-2271).
Thus, we should not skip it while checking HSR.EC value.

For this type of exception special coding of HSR.ISS is used. There is
additional flag (CCKNOWNPASS) to be checked before performing standard
handling of CCVALID and COND fields.

Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Reviewed-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
xen/arch/arm/traps.c