um: Report host OOM more nicely

If UML runs on the host side out of memory, report this
condition more nicely.

Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
Richard Weinberger 2015-10-25 22:26:09 +01:00
Родитель 1b2411c283
Коммит 70c8205f40
1 изменённых файлов: 15 добавлений и 1 удалений

Просмотреть файл

@ -50,6 +50,13 @@ struct host_vm_change {
.index = 0, \
.force = force })
static void report_enomem(void)
{
printk(KERN_ERR "UML ran out of memory on the host side! "
"This can happen due to a memory limitation or "
"vm.max_map_count has been reached.\n");
}
static int do_ops(struct host_vm_change *hvc, int end,
int finished)
{
@ -81,6 +88,9 @@ static int do_ops(struct host_vm_change *hvc, int end,
}
}
if (ret == -ENOMEM)
report_enomem();
return ret;
}
@ -433,8 +443,12 @@ void flush_tlb_page(struct vm_area_struct *vma, unsigned long address)
else if (pte_newprot(*pte))
err = protect(mm_id, address, PAGE_SIZE, prot, 1, &flush);
if (err)
if (err) {
if (err == -ENOMEM)
report_enomem();
goto kill;
}
*pte = pte_mkuptodate(*pte);