diff options
author | Andrew Morton <akpm@osdl.org> | 2005-11-28 13:43:48 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-28 14:42:23 -0800 |
commit | c13cf856cbe16aec3007604dc013cbf3a16c6686 (patch) | |
tree | 0d05f46a20de1abf59c02af4e819ccfae0a8d009 /kernel/fork.c | |
parent | ff88a3b2f56ae4f3296ea957ea38f99f8bd0e5a8 (diff) | |
download | lwn-c13cf856cbe16aec3007604dc013cbf3a16c6686.tar.gz lwn-c13cf856cbe16aec3007604dc013cbf3a16c6686.zip |
[PATCH] fork.c: proc_fork_connector() called under write_lock()
Don't do that - it does GFP_KERNEL allocations, for a start.
(Reported by Guillaume Thouvenin <guillaume.thouvenin@bull.net>)
Acked-by: Matt Helsley <matthltc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/fork.c')
-rw-r--r-- | kernel/fork.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index 1c1cf8dc396b..d0d49879ab7c 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -1135,13 +1135,13 @@ static task_t *copy_process(unsigned long clone_flags, __get_cpu_var(process_counts)++; } - proc_fork_connector(p); if (!current->signal->tty && p->signal->tty) p->signal->tty = NULL; nr_threads++; total_forks++; write_unlock_irq(&tasklist_lock); + proc_fork_connector(p); retval = 0; fork_out: |