Part 1: ARM: 7527/1: uaccess: fixup check __user pointer

The {get,put}_user macros don't perform range checking on the provided

This patch reworks the out-of-line assembly accessors to check the user
address against a specified limit, returning -EFAULT if is is out of
range.

[will: changed get_user register allocation to match put_user]
[rmk: fixed building on older ARM architectures]
Part 2: ARM: 7527/1: uaccess: fixup check __user pointer

The {get,put}_user macros don't perform range checking on the provided

This patch reworks the out-of-line assembly accessors to check the user
address against a specified limit, returning -EFAULT if is is out of
range.

[will: changed get_user register allocation to match put_user]
[rmk: fixed building on older ARM architectures]