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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Apr 2016 06:41:52 +0000 (15:41 +0900)
commitec353a589df2b1bea7e001266e97e4fd4347e1bf
treed2988babf82f2335340066248db93085d223c7b3
parent7cdf5d71b408f110657f2f441f7d37c2ebde2839
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: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/kernel/traps.c