aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/fork.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/fork.c b/kernel/fork.c
index 26a7a6707fa7..c4f38a849436 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1340,7 +1340,13 @@ static struct task_struct *copy_process(unsigned long clone_flags,
1340 clear_all_latency_tracing(p); 1340 clear_all_latency_tracing(p);
1341 1341
1342 /* ok, now we should be set up.. */ 1342 /* ok, now we should be set up.. */
1343 p->exit_signal = (clone_flags & CLONE_THREAD) ? -1 : (clone_flags & CSIGNAL); 1343 if (clone_flags & CLONE_THREAD)
1344 p->exit_signal = -1;
1345 else if (clone_flags & CLONE_PARENT)
1346 p->exit_signal = current->group_leader->exit_signal;
1347 else
1348 p->exit_signal = (clone_flags & CSIGNAL);
1349
1344 p->pdeath_signal = 0; 1350 p->pdeath_signal = 0;
1345 p->exit_state = 0; 1351 p->exit_state = 0;
1346 1352