aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/fork.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/fork.c')
-rw-r--r--kernel/fork.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/kernel/fork.c b/kernel/fork.c
index 8a069612eac3..158710d22566 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -42,6 +42,7 @@
42#include <linux/profile.h> 42#include <linux/profile.h>
43#include <linux/rmap.h> 43#include <linux/rmap.h>
44#include <linux/acct.h> 44#include <linux/acct.h>
45#include <linux/cn_proc.h>
45 46
46#include <asm/pgtable.h> 47#include <asm/pgtable.h>
47#include <asm/pgalloc.h> 48#include <asm/pgalloc.h>
@@ -469,13 +470,6 @@ static int copy_mm(unsigned long clone_flags, struct task_struct * tsk)
469 if (clone_flags & CLONE_VM) { 470 if (clone_flags & CLONE_VM) {
470 atomic_inc(&oldmm->mm_users); 471 atomic_inc(&oldmm->mm_users);
471 mm = oldmm; 472 mm = oldmm;
472 /*
473 * There are cases where the PTL is held to ensure no
474 * new threads start up in user mode using an mm, which
475 * allows optimizing out ipis; the tlb_gather_mmu code
476 * is an example.
477 */
478 spin_unlock_wait(&oldmm->page_table_lock);
479 goto good_mm; 473 goto good_mm;
480 } 474 }
481 475
@@ -1143,6 +1137,7 @@ static task_t *copy_process(unsigned long clone_flags,
1143 __get_cpu_var(process_counts)++; 1137 __get_cpu_var(process_counts)++;
1144 } 1138 }
1145 1139
1140 proc_fork_connector(p);
1146 if (!current->signal->tty && p->signal->tty) 1141 if (!current->signal->tty && p->signal->tty)
1147 p->signal->tty = NULL; 1142 p->signal->tty = NULL;
1148 1143