Roman Bogorodskiy wrote: > Hi, > > I'm running into a problem. I did a fresh checkout of 'bhyve' branch > from svn and followed the instruction here: > > http://people.freebsd.org/~neel/bhyve/bhyve_instructions.txt > > In my /boot/loader.conf I have: > > debug.witness.watch="0" > hw.physmem="0x180000000" > > and dmesg says: > > real memory = 8589934592 (8192 MB) > avail memory = 5643694080 (5382 MB) > > When I try to start a VM I get this error: > > (19:46) novel@kloomba:~/bhyve/vm1 %> sudo ./vmrun.sh -m 256 vm1 > Launching virtual machine "vm1" with 256MB memory below 4GB and 2048MB memory > above 4GB ... > vm_setup_memory(highmem): Cannot allocate memory > (19:46) novel@kloomba:~/bhyve/vm1 %> > > This page: > > http://callfortesting.org/bhyve/ > > describes that reloading 'vmm' would help, but doing it changes nothing. > > Any ideas what's wrong with that? Also, I am curious, what do these > numbers mean: > > "256MB memory below 4GB and 2048MB memory above 4GB". I get that 256 is > the amount of mem to give to VM, but what do 4GB and 2048MB stand for?
I have managed to boot a VM. The 4GB thing is hardcoded in the vmrun.sh script: 110 echo "Launching virtual machine \"$vmname\" with ${lowmem}MB memory below 4GB and ${highmem}MB memory above 4GB ..." Also, it seems it's hardcoded in bhyveload.c: if (highmem != 0) { error = vm_setup_memory(ctx, 4 * GB, highmem, NULL); <--- here if (error) { perror("vm_setup_memory(highmem)"); exit(1); } } I used './vmrun.sh -m 512 -M 0 vm1' which sets highmem == 0 to avoid this call. Roman Bogorodskiy
pgpB7OlqrrXlP.pgp
Description: PGP signature