Created attachment 134511 [details] Kernel configuration 3.14.2 I am building an embedded image to be used in a virtual environment. For this effort I have customly configured a kernel, and test my work in VirtualBox (4.3.10). Today I noticed that my configured kernel was unable to boot when the configured memory inside the Virtual Machine was smaller than ~1127MB of memory. To make it more exact: 1024MB or small doesn't boot and results in: Random: nonblocking pool is initialized or sometimes one step further: futex hash table entries: 256 (order: 0, 6144 bytes) At this moment I don't have a clue if this is a kernel issue, a kernel configuration issue, or a VirtualBox issue. I have added a bug in their tracker as well, prior to my validation with a vanilla kernel. https://www.virtualbox.org/ticket/13005 I have screen recorded my initial effort in the booting problem. http://www.youtube.com/watch?v=KCvKCfDwW90 Is there any way to validate what it is doing when not having "sufficient" memory available?
Using VMware I can confirm that booting with 64MB works.
A lot of the early setup code simply doesn't allow for out of memory - if we hit it we die, but I would usually expect a panic. The initcall tracer may help pin down where it gets too. You can get a kernel into a fair bit under 1.1MB but you do need some patches that Dave Miller refuses to accept for upstream networking, some patches done for other trees and a recent x86 tool chain that can do the necessary link time optimisations/dropping.