ARM: 7876/1: clear Thumb-2 IT state on exception handling
authorMarc Zyngier <Marc.Zyngier@arm.com>
Mon, 4 Nov 2013 10:42:29 +0000 (11:42 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 7 Nov 2013 00:15:49 +0000 (00:15 +0000)
commite16b31bf47738f4498d7ce632e12d7d2a6a2492a
tree32816ec7e20243cdfc3266a07f514e8b002664d3
parent384b38b66947b06999b3e39a596d4f2fb94f77e4
ARM: 7876/1: clear Thumb-2 IT state on exception handling

The exception handling code fails to clear the IT state, potentially
leading to incorrect execution of the fixup if the size of the IT
block is more than one.

Let fixup_exception do the IT sanitizing if a fixup has been found,
and restore CPSR from the stack when returning from a data abort.

Cc: Will Deacon <will.deacon@arm.com>
Cc: stable@vger.kernel.org
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/entry-armv.S
arch/arm/mm/extable.c