MIPS: uaccess: Take EVA into account in [__]clear_user
authorJames Hogan <james.hogan@imgtec.com>
Wed, 5 Aug 2015 15:41:39 +0000 (16:41 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Tue, 22 Dec 2015 10:58:43 +0000 (11:58 +0100)
commitd6a428fb583738ad685c91a684748cdee7b2a05f
treea0c987da5c8d66400b4cb40628921a775bc99ae8
parent6f06a2c45d8d714ea3b11a360b4a7191e52acaa4
MIPS: uaccess: Take EVA into account in [__]clear_user

__clear_user() (and clear_user() which uses it), always access the user
mode address space, which results in EVA store instructions when EVA is
enabled even if the current user address limit is KERNEL_DS.

Fix this by adding a new symbol __bzero_kernel for the normal kernel
address space bzero in EVA mode, and call that from __clear_user() if
eva_kernel_access().

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Markos Chandras <markos.chandras@imgtec.com>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Leonid Yegoshin <leonid.yegoshin@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/10844/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/include/asm/uaccess.h
arch/mips/kernel/mips_ksyms.c
arch/mips/lib/memset.S