]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
parisc: Unbreak handling exceptions from kernel modules
authorHelge Deller <deller@gmx.de>
Fri, 8 Apr 2016 16:32:52 +0000 (18:32 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Apr 2016 06:45:05 +0000 (15:45 +0900)
commit23e52d58f376cfed2d4d5b8b4789d3bf7ce5360a
tree254c0869fc073bc873483675624e80f0195c0919
parent1abe5c5fa89d2730a6f4d4b1aaa3f847e5adeaa7
parisc: Unbreak handling exceptions from kernel modules

commit 2ef4dfd9d9f288943e249b78365a69e3ea3ec072 upstream.

Handling exceptions from modules never worked on parisc.
It was just masked by the fact that exceptions from modules
don't happen during normal use.

When a module triggers an exception in get_user() we need to load the
main kernel dp value before accessing the exception_data structure, and
afterwards restore the original dp value of the module on exit.

Noticed-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/include/asm/uaccess.h
arch/parisc/kernel/asm-offsets.c
arch/parisc/lib/fixup.S
arch/parisc/mm/fault.c