aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/lib/copy_in_user.S
diff options
context:
space:
mode:
authorPavel Tatashin <pasha.tatashin@soleen.com>2019-11-20 12:07:40 -0500
committerWill Deacon <will@kernel.org>2019-11-20 18:51:54 +0000
commite50be648aaa3da196d4f4ed49d1c5d4ec105fa4a (patch)
tree9c173b83fa66c80fb84c5dfa4738e39372011fb7 /arch/arm64/lib/copy_in_user.S
parentarm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault (diff)
downloadlinux-dev-e50be648aaa3da196d4f4ed49d1c5d4ec105fa4a.tar.xz
linux-dev-e50be648aaa3da196d4f4ed49d1c5d4ec105fa4a.zip
arm64: uaccess: Remove uaccess_*_not_uao asm macros
It is safer and simpler to drop the uaccess assembly macros in favour of inline C functions. Although this bloats the Image size slightly, it aligns our user copy routines with '{get,put}_user()' and generally makes the code a lot easier to reason about. Cc: Catalin Marinas <catalin.marinas@arm.com> Reviewed-by: Mark Rutland <mark.rutland@arm.com> Tested-by: Mark Rutland <mark.rutland@arm.com> Signed-off-by: Pavel Tatashin <pasha.tatashin@soleen.com> [will: tweaked commit message and changed temporary variable names] Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/lib/copy_in_user.S')
-rw-r--r--arch/arm64/lib/copy_in_user.S3
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/arm64/lib/copy_in_user.S b/arch/arm64/lib/copy_in_user.S
index 8e0355c1e318..3d8153a1ebce 100644
--- a/arch/arm64/lib/copy_in_user.S
+++ b/arch/arm64/lib/copy_in_user.S
@@ -56,10 +56,8 @@
end .req x5
ENTRY(__arch_copy_in_user)
- uaccess_enable_not_uao x3, x4, x5
add end, x0, x2
#include "copy_template.S"
- uaccess_disable_not_uao x3, x4
mov x0, #0
ret
ENDPROC(__arch_copy_in_user)
@@ -68,6 +66,5 @@ EXPORT_SYMBOL(__arch_copy_in_user)
.section .fixup,"ax"
.align 2
9998: sub x0, end, dst // bytes not copied
- uaccess_disable_not_uao x3, x4
ret
.previous