diff options
Diffstat (limited to 'kernel/fork.c')
-rw-r--r-- | kernel/fork.c | 9 |
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 | ||