Skip to content

Commit

Permalink
docs: update recommendation on ENOMEM
Browse files Browse the repository at this point in the history
The recommendation to patch and recompile a kernel is quite extreme.
Instead, let's suggest some more mild approaches.

Signed-off-by: Pablo Barbáchano <pablob@amazon.com>
  • Loading branch information
pb8o committed Apr 21, 2023
1 parent 8c26dcf commit 22b83e6
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,9 +237,12 @@ contiguous pages.

Possible mitigations are:

- Track the failing allocations in the `dmesg` output and rebuild the host
kernel so as to use `vmalloc` instead of `kmalloc` for them.
- Reduce memory pressure on the host.
- Maybe the host has memory but it's too fragmented for the kernel to use. The
allocation above of order 6 means the kernel could not find 2^6
**consecutive** pages. One way to mitigate memory fragmentation is to [set a
higher value](https://linuxhint.com/vm_min_free_kbytes_sysctl/) for `vm.min_free_kbytes`
- Or investigate other [mitigations](https://savvinov.com/2019/10/14/memory-fragmentation-the-silent-performance-killer/)

### How can I configure and start a microVM without sending API calls?

Expand All @@ -258,6 +261,13 @@ If the microVM was not configured in terms of memory size through an API request
the host needs to meet the minimum requirement in terms of free memory size,
namely 128 MB of free memory which the microVM defaults to.

This may be related to "We are seeing page allocation failures ..." above. To
validate, run this:

```sh
sudo dmesg | grep "page allocation failure"
```

### Firecracker fails to start and returns "Resource busy" error

If another hypervisor like VMware or VirtualBox is running on the host and
Expand Down

0 comments on commit 22b83e6

Please sign in to comment.