diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/signal.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/signal.c b/kernel/signal.c index ea154104a00b..dfb09ba5c013 100644 --- a/kernel/signal.c +++ b/kernel/signal.c | |||
@@ -1922,6 +1922,8 @@ int get_signal_to_deliver(siginfo_t *info, struct k_sigaction *return_ka, | |||
1922 | sigset_t *mask = ¤t->blocked; | 1922 | sigset_t *mask = ¤t->blocked; |
1923 | int signr = 0; | 1923 | int signr = 0; |
1924 | 1924 | ||
1925 | try_to_freeze(); | ||
1926 | |||
1925 | relock: | 1927 | relock: |
1926 | spin_lock_irq(¤t->sighand->siglock); | 1928 | spin_lock_irq(¤t->sighand->siglock); |
1927 | for (;;) { | 1929 | for (;;) { |
@@ -2307,7 +2309,6 @@ sys_rt_sigtimedwait(const sigset_t __user *uthese, | |||
2307 | 2309 | ||
2308 | timeout = schedule_timeout_interruptible(timeout); | 2310 | timeout = schedule_timeout_interruptible(timeout); |
2309 | 2311 | ||
2310 | try_to_freeze(); | ||
2311 | spin_lock_irq(¤t->sighand->siglock); | 2312 | spin_lock_irq(¤t->sighand->siglock); |
2312 | sig = dequeue_signal(current, &these, &info); | 2313 | sig = dequeue_signal(current, &these, &info); |
2313 | current->blocked = current->real_blocked; | 2314 | current->blocked = current->real_blocked; |