lkml.org 
[lkml]   [2020]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 2/2] powerpc/uaccess: Add pre-update addressing to __get_user_asm() and __put_user_asm()
    Date
    Enable pre-update addressing mode in __get_user_asm() and __put_user_asm()

    Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
    ---
    v3: new, splited out from patch 1.
    ---
    arch/powerpc/include/asm/uaccess.h | 8 ++++----
    1 file changed, 4 insertions(+), 4 deletions(-)

    diff --git a/arch/powerpc/include/asm/uaccess.h b/arch/powerpc/include/asm/uaccess.h
    index c546fb36043d..eadb25f4cc9f 100644
    --- a/arch/powerpc/include/asm/uaccess.h
    +++ b/arch/powerpc/include/asm/uaccess.h
    @@ -159,7 +159,7 @@ extern long __put_user_bad(void);
    */
    #define __put_user_asm(x, addr, err, op) \
    __asm__ __volatile__( \
    - "1: " op "%X2 %1,%2 # put_user\n" \
    + "1: " op "%U2%X2 %1,%2 # put_user\n" \
    "2:\n" \
    ".section .fixup,\"ax\"\n" \
    "3: li %0,%3\n" \
    @@ -167,7 +167,7 @@ extern long __put_user_bad(void);
    ".previous\n" \
    EX_TABLE(1b, 3b) \
    : "=r" (err) \
    - : "r" (x), "m" (*addr), "i" (-EFAULT), "0" (err))
    + : "r" (x), "m<>" (*addr), "i" (-EFAULT), "0" (err))

    #ifdef __powerpc64__
    #define __put_user_asm2(x, ptr, retval) \
    @@ -317,7 +317,7 @@ extern long __get_user_bad(void);

    #define __get_user_asm(x, addr, err, op) \
    __asm__ __volatile__( \
    - "1: "op"%X2 %1, %2 # get_user\n" \
    + "1: "op"%U2%X2 %1, %2 # get_user\n" \
    "2:\n" \
    ".section .fixup,\"ax\"\n" \
    "3: li %0,%3\n" \
    @@ -326,7 +326,7 @@ extern long __get_user_bad(void);
    ".previous\n" \
    EX_TABLE(1b, 3b) \
    : "=r" (err), "=r" (x) \
    - : "m" (*addr), "i" (-EFAULT), "0" (err))
    + : "m<>" (*addr), "i" (-EFAULT), "0" (err))

    #ifdef __powerpc64__
    #define __get_user_asm2(x, addr, err) \
    --
    2.25.0
    \
     
     \ /
      Last update: 2020-08-12 14:26    [W:5.233 / U:0.156 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site