lkml.org 
[lkml]   [2021]   [Apr]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 05/49] arc: kernel: Return -EFAULT if copy_to_user() fails
    Date
    From: Wang Qing <wangqing@vivo.com>

    [ Upstream commit 46e152186cd89d940b26726fff11eb3f4935b45a ]

    The copy_to_user() function returns the number of bytes remaining to be
    copied, but we want to return -EFAULT if the copy doesn't complete.

    Signed-off-by: Wang Qing <wangqing@vivo.com>
    Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/arc/kernel/signal.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/arch/arc/kernel/signal.c b/arch/arc/kernel/signal.c
    index 48685445002e..da243420bcb5 100644
    --- a/arch/arc/kernel/signal.c
    +++ b/arch/arc/kernel/signal.c
    @@ -99,7 +99,7 @@ stash_usr_regs(struct rt_sigframe __user *sf, struct pt_regs *regs,
    sizeof(sf->uc.uc_mcontext.regs.scratch));
    err |= __copy_to_user(&sf->uc.uc_sigmask, set, sizeof(sigset_t));

    - return err;
    + return err ? -EFAULT : 0;
    }

    static int restore_usr_regs(struct pt_regs *regs, struct rt_sigframe __user *sf)
    @@ -113,7 +113,7 @@ static int restore_usr_regs(struct pt_regs *regs, struct rt_sigframe __user *sf)
    &(sf->uc.uc_mcontext.regs.scratch),
    sizeof(sf->uc.uc_mcontext.regs.scratch));
    if (err)
    - return err;
    + return -EFAULT;

    set_current_blocked(&set);
    regs->bta = uregs.scratch.bta;
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-04-26 09:40    [W:4.785 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site