diff options
author | Akinobu Mita <mita@miraclelinux.com> | 2006-09-28 16:55:18 +0200 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2006-09-28 16:55:18 +0200 |
commit | bac9c66cd25e134077b284fc59bee6e5a8475d33 (patch) | |
tree | 5fa9a8bbda52f10f613060849f13e403a7dedb89 /arch/s390 | |
parent | Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/... (diff) | |
download | linux-bac9c66cd25e134077b284fc59bee6e5a8475d33.tar.xz linux-bac9c66cd25e134077b284fc59bee6e5a8475d33.zip |
[S390] init task memory faults.
Lock for mmap_sem is missing on page fault retry for init task
when it fails due to out of memory.
Signed-off-by: Akinobu Mita <mita@miraclelinux.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r-- | arch/s390/mm/fault.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c index 44f0cda7e72e..a393c308bb29 100644 --- a/arch/s390/mm/fault.c +++ b/arch/s390/mm/fault.c @@ -355,6 +355,7 @@ out_of_memory: up_read(&mm->mmap_sem); if (tsk->pid == 1) { yield(); + down_read(&mm->mmap_sem); goto survive; } printk("VM: killing process %s\n", tsk->comm); |