diff options
author | Pavel Tatashin <pasha.tatashin@soleen.com> | 2019-11-20 12:07:40 -0500 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2019-11-20 18:51:54 +0000 |
commit | e50be648aaa3da196d4f4ed49d1c5d4ec105fa4a (patch) | |
tree | 9c173b83fa66c80fb84c5dfa4738e39372011fb7 /arch/arm64/lib/copy_to_user.S | |
parent | 94bb804e1e6f0a9a77acf20d7c70ea141c6c821e (diff) | |
download | lwn-e50be648aaa3da196d4f4ed49d1c5d4ec105fa4a.tar.gz lwn-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_to_user.S')
-rw-r--r-- | arch/arm64/lib/copy_to_user.S | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/arm64/lib/copy_to_user.S b/arch/arm64/lib/copy_to_user.S index 6085214654dc..357eae2c18eb 100644 --- a/arch/arm64/lib/copy_to_user.S +++ b/arch/arm64/lib/copy_to_user.S @@ -53,10 +53,8 @@ end .req x5 ENTRY(__arch_copy_to_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_to_user) @@ -65,6 +63,5 @@ EXPORT_SYMBOL(__arch_copy_to_user) .section .fixup,"ax" .align 2 9998: sub x0, end, dst // bytes not copied - uaccess_disable_not_uao x3, x4 ret .previous |