lkml.org 
[lkml]   [2018]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 126/410] mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy
    3.16.57-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: "Eric W. Biederman" <ebiederm@xmission.com>

    commit 6ac1dc736b323011a55ecd1fc5897c24c4f77cbd upstream.

    Setting si_code to 0 is the same a setting si_code to SI_USER which is definitely
    not correct. With si_code set to SI_USER si_pid and si_uid will be copied to
    userspace instead of si_addr. Which is very wrong.

    So fix this by using a sensible si_code (SEGV_MAPERR) for this failure.

    Fixes: b920de1b77b7 ("mn10300: add the MN10300/AM33 architecture to the kernel")
    Cc: David Howells <dhowells@redhat.com>
    Cc: Masakazu Urade <urade.masakazu@jp.panasonic.com>
    Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
    Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    arch/mn10300/mm/misalignment.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/arch/mn10300/mm/misalignment.c
    +++ b/arch/mn10300/mm/misalignment.c
    @@ -437,7 +437,7 @@ transfer_failed:

    info.si_signo = SIGSEGV;
    info.si_errno = 0;
    - info.si_code = 0;
    + info.si_code = SEGV_MAPERR;
    info.si_addr = (void *) regs->pc;
    force_sig_info(SIGSEGV, &info, current);
    return;
    \
     
     \ /
      Last update: 2018-06-07 16:36    [W:4.929 / U:0.408 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site