parisc: Fix kernel crash with reversed copy_from_user()
authorHelge Deller <deller@gmx.de>
Fri, 8 Apr 2016 16:18:48 +0000 (18:18 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 30 Apr 2016 22:05:23 +0000 (00:05 +0200)
commit2e5c1b752c46b2bc61aa81f23b5a10f3a97bda76
tree55e700fc08c87d1ab128583536b73669127c6483
parentae75f6aa46fa384ff0bb417ae9fa4ebcc97acfc6
parisc: Fix kernel crash with reversed copy_from_user()

commit ef72f3110d8b19f4c098a0bff7ed7d11945e70c6 upstream.

The kernel module testcase (lib/test_user_copy.c) exhibited a kernel
crash on parisc if the parameters for copy_from_user were reversed
("illegal reversed copy_to_user" testcase).

Fix this potential crash by checking the fault handler if the faulting
address is in the exception table.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/parisc/kernel/traps.c