lkml.org 
[lkml]   [2010]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 1/5] frv: restart_block.fn needs to be reset on sigreturn
    Date
    From: Al Viro <viro@ftp.linux.org.uk>

    Reset restart_block.fn on executing a sigreturn such that any currently pending
    system call restarts will be forced to return -EINTR.

    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: David Howells <dhowells@redhat.com>
    ---

    arch/frv/kernel/signal.c | 3 +++
    1 files changed, 3 insertions(+), 0 deletions(-)


    diff --git a/arch/frv/kernel/signal.c b/arch/frv/kernel/signal.c
    index 0974c0e..7fc2961 100644
    --- a/arch/frv/kernel/signal.c
    +++ b/arch/frv/kernel/signal.c
    @@ -121,6 +121,9 @@ static int restore_sigcontext(struct sigcontext __user *sc, int *_gr8)
    struct user_context *user = current->thread.user;
    unsigned long tbr, psr;

    + /* Always make any pending restarted system calls return -EINTR */
    + current_thread_info()->restart_block.fn = do_no_restart_syscall;
    +
    tbr = user->i.tbr;
    psr = user->i.psr;
    if (copy_from_user(user, &sc->sc_context, sizeof(sc->sc_context)))


    \
     
     \ /
      Last update: 2010-09-20 16:15    [W:0.019 / U:0.696 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site