diff options
author | Sukadev Bhattiprolu <sukadev@us.ibm.com> | 2007-05-10 22:23:04 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-11 08:29:36 -0700 |
commit | 0800d30832ddecf2d9dc40068fed9df95930a8f1 (patch) | |
tree | fa4aa77d9cd95818b4ba32ced6bbb096c19b1bfb /kernel | |
parent | 85868995d9d82de5b0de38d695559daddffef893 (diff) | |
download | lwn-0800d30832ddecf2d9dc40068fed9df95930a8f1.tar.gz lwn-0800d30832ddecf2d9dc40068fed9df95930a8f1.zip |
Use task_pgrp() task_session() in copy_process()
Use task_pgrp() and task_session() in copy_process(), and avoid find_pid()
call when attaching the task to its process group and session.
Signed-off-by: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Cc: Cedric Le Goater <clg@fr.ibm.com>
Cc: Dave Hansen <haveblue@us.ibm.com>
Cc: Serge Hallyn <serue@us.ibm.com>
Cc: <containers@lists.osdl.org>
Acked-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/fork.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index cf13c44f3da3..083bf8953ce8 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1249,14 +1249,11 @@ static struct task_struct *copy_process(unsigned long clone_flags, __ptrace_link(p, current->parent); if (thread_group_leader(p)) { - pid_t pgid = process_group(current); - pid_t sid = process_session(current); - p->signal->tty = current->signal->tty; - p->signal->pgrp = pgid; + p->signal->pgrp = process_group(current); set_signal_session(p->signal, process_session(current)); - attach_pid(p, PIDTYPE_PGID, find_pid(pgid)); - attach_pid(p, PIDTYPE_SID, find_pid(sid)); + attach_pid(p, PIDTYPE_PGID, task_pgrp(current)); + attach_pid(p, PIDTYPE_SID, task_session(current)); list_add_tail_rcu(&p->tasks, &init_task.tasks); __get_cpu_var(process_counts)++; |