diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2015-09-11 16:44:02 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2015-09-16 10:35:40 +0100 |
commit | 9b55613f42e8d40d5c9ccb8970bde6af4764b2ab (patch) | |
tree | 4e995bc3a516baeefb1ba4a053c9a3e7a100ffb3 /lib/cmdline.c | |
parent | c2172ce2303051764829d4958bd50a11ada0590f (diff) | |
download | op-kernel-dev-9b55613f42e8d40d5c9ccb8970bde6af4764b2ab.zip op-kernel-dev-9b55613f42e8d40d5c9ccb8970bde6af4764b2ab.tar.gz |
ARM: fix Thumb2 signal handling when ARMv6 is enabled
When a kernel is built covering ARMv6 to ARMv7, we omit to clear the
IT state when entering a signal handler. This can cause the first
few instructions to be conditionally executed depending on the parent
context.
In any case, the original test for >= ARMv7 is broken - ARMv6 can have
Thumb-2 support as well, and an ARMv6T2 specific build would omit this
code too.
Relax the test back to ARMv6 or greater. This results in us always
clearing the IT state bits in the PSR, even on CPUs where these bits
are reserved. However, they're reserved for the IT state, so this
should cause no harm.
Cc: <stable@vger.kernel.org>
Fixes: d71e1352e240 ("Clear the IT state when invoking a Thumb-2 signal handler")
Acked-by: Tony Lindgren <tony@atomide.com>
Tested-by: H. Nikolaus Schaller <hns@goldelico.com>
Tested-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'lib/cmdline.c')
0 files changed, 0 insertions, 0 deletions