summaryrefslogtreecommitdiff
path: root/kernel/fork.c
diff options
context:
space:
mode:
authorJohn L. Byrne <john.l.byrne@hp.com>2004-10-13 07:26:01 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-10-13 07:26:01 -0700
commit511ca0be9d97abfefbce4cde77b2332c9d8762db (patch)
tree88c124e24b6dae3b5242ac99886a08eb7a7b322e /kernel/fork.c
parent011a660daec1f656a28179f675eca7b89e2987cb (diff)
[PATCH] fix oops in fork() cleanup path
It will oops on an error path if the thread being forked is a process with a NULL mm. 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.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/fork.c b/kernel/fork.c
index 8c7ba481c9a5..7e73e420441e 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1146,7 +1146,8 @@ fork_out:
bad_fork_cleanup_namespace:
exit_namespace(p);
bad_fork_cleanup_mm:
- mmput(p->mm);
+ if (p->mm)
+ mmput(p->mm);
bad_fork_cleanup_signal:
exit_signal(p);
bad_fork_cleanup_sighand: