[ARM] 4474/1: Do not check the PSR_F_BIT in valid_user_regs
authorCatalin Marinas <catalin.marinas@arm.com>
Wed, 11 Jul 2007 10:29:39 +0000 (11:29 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 12 Jul 2007 15:20:52 +0000 (16:20 +0100)
commitd1cbbd6b413510c6512f4f80ffd48db1a8dd554a
treefb3f908530cf2c4957aa45256214ed7d59557820
parentf884b1cf578e079f01682514ae1ae64c74586602
[ARM] 4474/1: Do not check the PSR_F_BIT in valid_user_regs

When running Linux in non-secure mode (on ARM1176 for example),
depending on the CP15 secure configuration register, the CPSR.F bit
(6) might only be modified from the secure mode. However, the
valid_user_regs() function checks for this bit being cleared. With
commit a6c61e9d, a SIGSEGV is forced in handle_signal() if the user
registers are not considered valid.

The patch also ensures that the CPSR.A bit is cleared and the USR mode
is set if the CPU does not support the 26bit user mode.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
include/asm-arm/ptrace.h