diff options
| author | 2016-02-17 10:37:36 +0100 | |
|---|---|---|
| committer | 2016-02-17 10:37:36 +0100 | |
| commit | 9109dc97b0155e500cdf3bcd91507bc24defefc1 (patch) | |
| tree | 5d721cbfeb3576dc6969093ab04f17666737b6a4 /kernel/signal.c | |
| parent | perf/x86: Move perf_event.h to its new home (diff) | |
| parent | perf/core: Plug potential memory leak in CPU_UP_PREPARE (diff) | |
| download | wireguard-linux-9109dc97b0155e500cdf3bcd91507bc24defefc1.tar.xz wireguard-linux-9109dc97b0155e500cdf3bcd91507bc24defefc1.zip | |
Merge branch 'perf/urgent' into perf/core, to queue up dependent patch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to '')
| -rw-r--r-- | kernel/signal.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/signal.c b/kernel/signal.c index f3f1f7a972fd..0508544c8ced 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -3508,8 +3508,10 @@ static int sigsuspend(sigset_t *set) current->saved_sigmask = current->blocked; set_current_blocked(set); - __set_current_state(TASK_INTERRUPTIBLE); - schedule(); + while (!signal_pending(current)) { + __set_current_state(TASK_INTERRUPTIBLE); + schedule(); + } set_restore_sigmask(); return -ERESTARTNOHAND; } |
