On 01/14, Davidlohr Bueso wrote:
>
> Call __set_current_state() instead of assigning the new state directly.
> These interfaces also aid CONFIG_DEBUG_ATOMIC_SLEEP environments, keeping
> track of who changed the state.

Acked-by: Oleg Nesterov <o...@redhat.com>

> Signed-off-by: Davidlohr Bueso <dbu...@suse.de>
> Cc: Oleg Nesterov <o...@redhat.com>
> ---
>  kernel/signal.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/kernel/signal.c b/kernel/signal.c
> index 33a5275..a390499 100644
> --- a/kernel/signal.c
> +++ b/kernel/signal.c
> @@ -3550,7 +3550,7 @@ SYSCALL_DEFINE2(signal, int, sig, __sighandler_t, 
> handler)
>  SYSCALL_DEFINE0(pause)
>  {
>       while (!signal_pending(current)) {
> -             current->state = TASK_INTERRUPTIBLE;
> +             __set_current_state(TASK_INTERRUPTIBLE);
>               schedule();
>       }
>       return -ERESTARTNOHAND;
> @@ -3563,7 +3563,7 @@ int sigsuspend(sigset_t *set)
>       current->saved_sigmask = current->blocked;
>       set_current_blocked(set);
>  
> -     current->state = TASK_INTERRUPTIBLE;
> +     __set_current_state(TASK_INTERRUPTIBLE);
>       schedule();
>       set_restore_sigmask();
>       return -ERESTARTNOHAND;
> -- 
> 2.1.2
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@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 via email to