Haiku in bhyve on TrueNAS

I know this is pretty unusual but I wanted to see if I can run Haiku in a bhyve VM in TrueNAS (FreeBSD). I created a VM with 1 CPU, 1 core, 1 thread and 1GB or RAM. I uploaded the Haiku anyboot ISO and tried to initialize the VM. It gets stuck fairly quickly after it exits the EFI.
The machine is a 2U dual socket server Supermicro with Xeon CPU E5-2620 v2 @ 2.10GHz
I did see the other forum thread about Haiku an bhyve but it doesn’t seem helpful as this seem to fail fairly early in the process.

Here’s the output from the VM:

Freeing memory_region v: 0x0 p: 0x3c8a2000 size: 65536
Freeing memory_region v: 0x0 p: 0x3c8b2000 size: 65536
Freeing memory_region v: 0x0 p: 0x3c8c2000 size: 622016
load kernel kernel_x86_64...
Freeing memory_region v: 0x0 p: 0x3c92a000 size: 65536
... (More of the same message)
Freeing memory_region v: 0x0 p: 0x3bff4000 size: 65536
ucode_load: system/data/firmware/intel-ucode/06-3e-04
ucode_load: couldn't find microcode
maximum boot loader heap usage: 911360, currently used: 900248
GDT at 0xffffff003e9b1b80
kernel entry at 0xffffffff80062900
Kernel stack at 0xffffffff8274d000
System provided memory map:
  0x0-0x1000  0x0 0x3 0xf
  0x1000-0xa0000  0x0 0x7 0xf
  0x100000-0x800000  0x0 0x7 0xf
  0x800000-0x1000000  0x0 0x4 0xf
  0x1000000-0x3bfbe000  0x0 0x7 0xf
  0x3bfbe000-0x3bfde000  0x0 0x4 0xf
  0x3bfde000-0x3bfff000  0x0 0x7 0xf
  0x3bfff000-0x3e95a000  0x0 0x2 0xf
  0x3e95a000-0x3e9d8000  0x0 0x1 0xf
  0x3e9d8000-0x3ea96000  0x0 0x3 0xf
  0x3ea96000-0x3ea98000  0x0 0x6 0x800000000000000f
  0x3ea98000-0x3ea9a000  0x0 0x9 0xf
  0x3ea9a000-0x3eaa9000  0x0 0x6 0x800000000000000f
  0x3eaa9000-0x3ef62000  0x0 0x7 0xf
  0x3ef62000-0x3f9a9000  0x0 0x4 0xf
  0x3f9a9000-0x3fb29000  0x0 0x3 0xf
  0x3fb29000-0x3fb59000  0x0 0x5 0x800000000000000f
  0x3fb59000-0x3fb7d000  0x0 0x6 0x800000000000000f
  0x3fb7d000-0x3fb82000  0x0 0x7 0xf
  0x3fb82000-0x3fb89000  0x0 0x9 0xf
  0x3fb89000-0x3fb8d000  0x0 0xa 0xf
  0x3fb8d000-0x3ffd0000  0x0 0x4 0xf
  0x3ffd0000-0x3fff0000  0x0 0x6 0x800000000000000f
  0x3fff0000-0x40000000  0x0 0x7 0xf
Final PML4 at 0x3bffe000
Calling ExitBootServices. So long, EFI!
Switched to legacy serial output
Welcome to kernel debugger output!
Haiku revision: hrev55181+51, debug level: 1
CPU: no microcode provided
CPU 0: type 0 family 6 extended_family 0 model 14 extended_model 3 stepping 4, string 'GenuineIntel'
CPU 0: vendor 'Intel' model name 'Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz'
CPU 0: apic id 0, package 0, core 0, smt 0
CPU 0: cache sharing: L1 id 0, L2 id 0, L3 id 0
CPU 0: features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clfsh mmx fxsr sse sse2 ss htt pbe sse3 pclmulqdq dtes64 dscpl ssse3 cx16 xtpr pcid dca sse4_1 sse4_2 popcnt aes xsave avx f16c rdrnd hypervisor syscall nx pdpe1gb long arat erms xsaveopt
CPU 0: patch_level 0
reserve_io_interrupt_vectors: reserved 16 vectors starting from 0
mark_page_range_in_use(0x0, 0x100): start page is before free list
mark_page_range_in_use(0x0, 0xa0): start page is before free list

Any clues as to what I might try next?


[EDIT] After I posted this it occurred to me that I wouldn’t know if Haiku booted successfully if it switches to graphics mode since the serial console wouldn’t show me this and I’m not sure if Haiku runs a VNC server that I can connect to… It’s probably a silly idea to run Haiku in a headless server to begin with…

1 Like

Haiki doesn’t run vnc, but bhyve can.

I used Haiku sucessfully in bhyve on FreeBSD in the past, but only with one core. (which seems to be your setup)

Have you checked the manual already? Emulating Haiku in Bhyve | Haiku Project