]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: 7946/1: asm: __und_usr_thumb need byteswap instructions in BE case
authorVictor Kamensky <victor.kamensky@linaro.org>
Tue, 21 Jan 2014 05:45:11 +0000 (06:45 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 28 Jan 2014 14:34:02 +0000 (14:34 +0000)
commit7e49e5abb0a86d7085fbfa1dae784ddd108a3a67
treec7ecc240b1be5714624b39d08f564fe0b3d33e06
parentd9ac07d73c2e7830318c3ecf71c34defa835e4f7
ARM: 7946/1: asm: __und_usr_thumb need byteswap instructions in BE case

__und_usr_thumb function deals with thumb2 opcodes. In case of BE
image, it needs to byteswap half word thumb2 encoded instructions
before further processing them.

Without this fix BE image user-land thread executing first VFP
instruction encoded in thumb2 fails with SIGILL, because kernel
does not recognize instruction and does not enable VFP.

Reported-by: Corey Melton <comelton@cisco.com>
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Tested-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/entry-armv.S