[PATCH] signals: send_signal: be paranoid about signalfd_notify() - Kernel

This is a discussion on [PATCH] signals: send_signal: be paranoid about signalfd_notify() - Kernel ; send_signal() shouldn't call signalfd_notify() if it then fails with -EAGAIN. Harmless, just a paranoid cleanup. Also remove the comment. It is obsolete, signalfd_notify() was simplified and does a simple wakeup. Signed-off-by: Oleg Nesterov --- 25/kernel/signal.c~3_SS_NOTIFY 2008-03-12 15:16:52.000000000 +0300 +++ 25/kernel/signal.c ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: [PATCH] signals: send_signal: be paranoid about signalfd_notify()

  1. [PATCH] signals: send_signal: be paranoid about signalfd_notify()

    send_signal() shouldn't call signalfd_notify() if it then fails with -EAGAIN.
    Harmless, just a paranoid cleanup.

    Also remove the comment. It is obsolete, signalfd_notify() was simplified and
    does a simple wakeup.

    Signed-off-by: Oleg Nesterov

    --- 25/kernel/signal.c~3_SS_NOTIFY 2008-03-12 15:16:52.000000000 +0300
    +++ 25/kernel/signal.c 2008-03-12 15:55:47.000000000 +0300
    @@ -769,13 +769,6 @@ static int send_signal(int sig, struct s
    */
    if (legacy_queue(pending, sig))
    return 0;
    -
    - /*
    - * Deliver the signal to listening signalfds. This must be called
    - * with the sighand lock held.
    - */
    - signalfd_notify(t, sig);
    -
    /*
    * fast-pathed signals for kernel-internal things like SIGSTOP
    * or SIGKILL.
    @@ -825,6 +818,7 @@ static int send_signal(int sig, struct s
    }

    out_set:
    + signalfd_notify(t, sig);
    sigaddset(&pending->signal, sig);
    complete_signal(sig, t, group);
    return 0;

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  2. Re: [PATCH] signals: send_signal: be paranoid about signalfd_notify()

    On Wed, 12 Mar 2008, Oleg Nesterov wrote:

    > send_signal() shouldn't call signalfd_notify() if it then fails with -EAGAIN.
    > Harmless, just a paranoid cleanup.
    >
    > Also remove the comment. It is obsolete, signalfd_notify() was simplified and
    > does a simple wakeup.
    >
    > Signed-off-by: Oleg Nesterov


    Looks fine to me.

    Acked-by: Davide Libenzi



    >
    > --- 25/kernel/signal.c~3_SS_NOTIFY 2008-03-12 15:16:52.000000000 +0300
    > +++ 25/kernel/signal.c 2008-03-12 15:55:47.000000000 +0300
    > @@ -769,13 +769,6 @@ static int send_signal(int sig, struct s
    > */
    > if (legacy_queue(pending, sig))
    > return 0;
    > -
    > - /*
    > - * Deliver the signal to listening signalfds. This must be called
    > - * with the sighand lock held.
    > - */
    > - signalfd_notify(t, sig);
    > -
    > /*
    > * fast-pathed signals for kernel-internal things like SIGSTOP
    > * or SIGKILL.
    > @@ -825,6 +818,7 @@ static int send_signal(int sig, struct s
    > }
    >
    > out_set:
    > + signalfd_notify(t, sig);
    > sigaddset(&pending->signal, sig);
    > complete_signal(sig, t, group);
    > return 0;
    >



    - Davide


    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread