From eec789d6e4b29924144e6757e0e63f067d9346bc Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Mon, 3 Jul 2006 00:25:15 -0700 Subject: [PATCH] --- yaml --- r: 31828 b: refs/heads/master c: ad33945175bed649ca5fe0881269db005bbb449a h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/fork.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index c7db2edc56c3..a657a17dc703 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d378834840907326ac9d448056d957d13cc3718f +refs/heads/master: ad33945175bed649ca5fe0881269db005bbb449a diff --git a/trunk/kernel/fork.c b/trunk/kernel/fork.c index 7f48abdd7bb6..54953d8a6f17 100644 --- a/trunk/kernel/fork.c +++ b/trunk/kernel/fork.c @@ -193,7 +193,10 @@ static inline int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm) down_write(&oldmm->mmap_sem); flush_cache_mm(oldmm); - down_write(&mm->mmap_sem); + /* + * Not linked in yet - no deadlock potential: + */ + down_write_nested(&mm->mmap_sem, SINGLE_DEPTH_NESTING); mm->locked_vm = 0; mm->mmap = NULL;