diff options
author | Mark Brown <broonie@linaro.org> | 2013-09-27 10:44:04 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-09-27 10:44:04 +0100 |
commit | 67a681c0333be267b80a509151a4553760069bb2 (patch) | |
tree | cbc73b3ab21d0ab843d9bd659fe185f9986be5bb /kernel/fork.c | |
parent | dafe3258c5449e2697097285c37c761915053eae (diff) | |
parent | 2a0458773656240cf6fa97f1126c92dcddf8ab90 (diff) |
Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android
Diffstat (limited to 'kernel/fork.c')
-rw-r--r-- | kernel/fork.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index b394c2036e4f..f9a15a265444 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1188,10 +1188,11 @@ static struct task_struct *copy_process(unsigned long clone_flags, return ERR_PTR(-EINVAL); /* - * If the new process will be in a different pid namespace - * don't allow the creation of threads. + * If the new process will be in a different pid namespace don't + * allow it to share a thread group or signal handlers with the + * forking task. */ - if ((clone_flags & (CLONE_VM|CLONE_NEWPID)) && + if ((clone_flags & (CLONE_SIGHAND | CLONE_NEWPID)) && (task_active_pid_ns(current) != current->nsproxy->pid_ns)) return ERR_PTR(-EINVAL); |