Skip to content
Snippets Groups Projects
Commit c362a431 authored by Nadav Har'El's avatar Nadav Har'El
Browse files

Better error messages when out of memory

When out of memory in alloc_page() or malloc_large(), we used to produce
mysterious assertion failures or aborts. Now print a more user-friendly
"out of memory" error (and abort).
parent cba53d9a
No related branches found
No related tags found
No related merge requests found
......@@ -179,6 +179,8 @@ void* malloc_large(size_t size)
return obj;
}
}
debug(fmt("malloc_large(): out of memory: can't find %d bytes. aborting.")
% size);
abort();
}
......@@ -233,7 +235,11 @@ void* alloc_page()
{
std::lock_guard<mutex> guard(free_page_ranges_lock);
assert(!free_page_ranges.empty());
if(free_page_ranges.empty()) {
debug("alloc_page(): out of memory\n", false);
abort();
}
auto p = &*free_page_ranges.begin();
if (p->size == page_size) {
free_page_ranges.erase(*p);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment