diff options
author | Akinobu Mita <mita@miraclelinux.com> | 2006-09-28 10:55:18 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2006-09-28 10:55:18 -0400 |
commit | bac9c66cd25e134077b284fc59bee6e5a8475d33 (patch) | |
tree | 5fa9a8bbda52f10f613060849f13e403a7dedb89 /arch | |
parent | a77c64c1a641950626181b4857abb701d8f38ccc (diff) |
[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')
-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: | |||
355 | up_read(&mm->mmap_sem); | 355 | up_read(&mm->mmap_sem); |
356 | if (tsk->pid == 1) { | 356 | if (tsk->pid == 1) { |
357 | yield(); | 357 | yield(); |
358 | down_read(&mm->mmap_sem); | ||
358 | goto survive; | 359 | goto survive; |
359 | } | 360 | } |
360 | printk("VM: killing process %s\n", tsk->comm); | 361 | printk("VM: killing process %s\n", tsk->comm); |