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)
committerDanny Wood <danwood76@gmail.com>
Tue, 29 Jan 2019 13:12:44 +0000 (13:12 +0000)
commit4f6d93ad7cf8e4cd557b2853afe9fe0193b0ca53
tree806c74f16dd4cd0f004b00f43d025ac572d5467a
parentb31b70b6bace5f52b92a6afdd2fe0af951c885f5
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>
Signed-off-by: Willy Tarreau <w@1wt.eu>
arch/parisc/kernel/traps.c