Re: [PATCH 3/3] signal: use current->state helpers

From: Oleg Nesterov
Date: Thu Jan 15 2015 - 14:44:18 EST


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 <oleg@xxxxxxxxxx>

> Signed-off-by: Davidlohr Bueso <dbueso@xxxxxxx>
> Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
> ---
> 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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/