# Bhyve Linux VM panics on start "No root device "block:/dev/mapper/VolGroup-lv_root" found"



## Henning Kessler (Oct 1, 2019)

Hello,

I am trying to run an CentOS based PBX appliance (Starface) in bhyve on my FreeNAS host. Installation from an .iso went fine but when I try to boot the vm it crashes with:

```
dracut Warning: No root device "block:/dev/mapper/VolGroup-lv_root" found

dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.


dracut Warning: Signal caught!

dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: init Not tainted 2.6.32-754.15.3.el6.x86_64 #1
Call Trace:
 [<ffffffff81558bca>] ? panic+0xa7/0x18b
 [<ffffffff81130370>] ? perf_event_exit_task+0xc0/0x340
 [<ffffffff81086433>] ? do_exit+0x853/0x860
 [<ffffffff811a33b5>] ? fput+0x25/0x30
 [<ffffffff81086498>] ? do_group_exit+0x58/0xd0
 [<ffffffff81086527>] ? sys_exit_group+0x17/0x20
 [<ffffffff81564357>] ? system_call_fastpath+0x35/0x3a
Killed
```

Host OS FreeNAS 11.2-U6, 16GB RAM, Xeon E3-1220L V2


This is the way how I created/installed the VM:
Virtual interface

```
sysctl net.link.tap.up_on_open=1
ifconfig tap1 create
ifconfig bridge0 addm tap1
```
Create the zvol for the virtual disk:

```
zfs create -V 40G -o volmode=dev mypool/bhyve/starface-test
```
contents of the device.map called starface.map:

```
(hd0) /dev/zvol/mypool/bhyve/starface-test
(cd0) /mnt/mypool/data/software/Bhyve/Starface-06.05.01.09-20180911-083820_x86_64.iso
```
Loading the linux kernel

```
grub-bhyve -m starface.map -r cd0 -M 2048M starface-test
```
Boot the vm from the iso to install the appliance

```
bhyve -A -H -P \
-s 0:0,hostbridge -s 1:0,lpc \
-s 2:0,virtio-net,tap1 \
-s 3:0,virtio-blk,/dev/zvol/mypool/bhyve/starface-test \
-s 4:0,ahci-cd,/mnt/mypool/data/software/Bhyve/Starface-06.05.01.09-20180911-083820_x86_64.iso \
-l com1,stdio -c 4 -m 2048M starface-test
```
Installation to the virtual devices succeeds. Instance is destroyed after installation

```
bhyvectl --destroy --vm=starface-test
```
Now starting the VM for its virtual disk

```
grub-bhyve -m starface.map -r hd0,msdos1 -M 2048M starface-test
```
Output of grub

```
grub> ls (hd0,msdos1)/
lost+found/ grub/ efi/ initramfs-2.6.32-696.23.1.el6.x86_64.img System.map-2.6.32-696.23.1.el6.x86_64
config-2.6.32-696.23.1.el6.x86_64 symvers-2.6.32-696.23.1.el6.x86_64.gz vmlinuz-2.6.32-696.23.1.el6.x
86_64
grub> linux (hd0,msdos1)/vmlinuz-2.6.32-696.23.1.el6.x86_64 root=/dev/mapper/VolGroup-lv_root
grub> initrd (hd0,msdos1)/initramfs-2.6.32-696.23.1.el6.x86_64.img 
grub> boot
```
Booting the machine

```
bhyve -A -H -P \
-s 0:0,hostbridge \
-s 1:0,lpc \
-s 2:0,virtio-net,tap1 \
-s 3:0,virtio-blk,/dev/zvol/mypool/bhyve/starface-test \
-l com1,stdio -c 4 -m 2048M starface
```
Complete Output of bootprocess

```
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-696.23.1.el6.x86_64 (mockbuild@x86-01.bsys.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Tue Mar 13 22:44:18 UTC 2018
Command line: console=ttyS0 BOOT_IMAGE=(hd0,msdos1)/vmlinuz-2.6.32-696.23.1.el6.x86_64 root=/dev/mapper/VolGroup-lv_root
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  Centaur CentaurHauls
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009ffff (usable)
 BIOS-e820: 0000000000100000 - 0000000080000000 (usable)
SMBIOS version 2.6 @ 0xF1000
SMBIOS 2.6 present.
last_pfn = 0x80000 max_arch_pfn = 0x400000000
x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
CPU MTRRs all blank - virtualized system.
init_memory_mapping: 0000000000000000-0000000080000000
RAMDISK: 032a9000 - 041b4af0
ACPI: Deleted _OSI(Windows 2012)
ACPI: Deleted _OSI(Windows 2013)
ACPI: RSDP 00000000000f2400 00024 (v02 BHYVE )
ACPI: XSDT 00000000000f2480 00044 (v01 BHYVE  BVXSDT   00000001 INTL 20171214)
ACPI: APIC 00000000000f2500 00072 (v01 BHYVE  BVMADT   00000001 INTL 20171214)
ACPI: FACP 00000000000f2600 0010C (v05 BHYVE  BVFACP   00000001 INTL 20171214)
ACPI: DSDT 00000000000f2800 0092C (v02 BHYVE  BVDSDT   00000001 INTL 20171214)
ACPI: FACS 00000000000f27c0 00040
ACPI: HPET 00000000000f2740 00038 (v01 BHYVE  BVHPET   00000001 INTL 20171214)
ACPI: MCFG 00000000000f2780 0003C (v01 BHYVE  BVMCFG   00000001 INTL 20171214)
Setting APIC routing to physical flat.
No NUMA configuration found
Faking a node at 0000000000000000-0000000080000000
Bootmem setup node 0 0000000000000000-0000000080000000
  NODE_DATA [0000000000009000 - 000000000003cfff]
  bootmap [000000000003d000 -  000000000004cfff] pages 10
(7 early reservations) ==> bootmem [0000000000 - 0080000000]
  #0 [0000000000 - 0000001000]   BIOS data page ==> [0000000000 - 0000001000]
  #1 [0000006000 - 0000008000]       TRAMPOLINE ==> [0000006000 - 0000008000]
  #2 [0001000000 - 000204ba64]    TEXT DATA BSS ==> [0001000000 - 000204ba64]
  #3 [00032a9000 - 00041b4af0]          RAMDISK ==> [00032a9000 - 00041b4af0]
  #4 [000009f000 - 0000100000]    BIOS reserved ==> [000009f000 - 0000100000]
  #5 [000204c000 - 000204c09e]              BRK ==> [000204c000 - 000204c09e]
  #6 [0000008000 - 0000009000]          PGTABLE ==> [0000008000 - 0000009000]
found SMP MP-table at [ffff8800000f0000] f0000
Zone PFN ranges:
  DMA      0x00000001 -> 0x00001000
  DMA32    0x00001000 -> 0x00100000
  Normal   0x00100000 -> 0x00100000
Movable zone start PFN for each node
early_node_map[2] active PFN ranges
    0: 0x00000001 -> 0x0000009f
    0: 0x00000100 -> 0x00080000
ACPI: PM-Timer IO Port: 0x408
Setting APIC routing to physical flat.
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled)
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x03] enabled)
ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1])
ACPI: IOAPIC (id[0x00] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 0-31
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
Using ACPI (MADT) for SMP configuration information
ACPI: HPET id: 0x80860701 base: 0xfed00000
SMP: Allowing 4 CPUs, 0 hotplug CPUs
PM: Registered nosave memory: 000000000009f000 - 0000000000100000
Allocating PCI resources starting at 80000000 (gap: 80000000:80000000)
Booting paravirtualized kernel on bare hardware
NR_CPUS:4096 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1
PERCPU: Embedded 33 pages/cpu @ffff880002200000 s104088 r8192 d22888 u524288
pcpu-alloc: s104088 r8192 d22888 u524288 alloc=1*2097152
pcpu-alloc: [0] 0 1 2 3 
Built 1 zonelists in Node order, mobility grouping on.  Total pages: 516921
Policy zone: DMA32
Kernel command line: console=ttyS0 BOOT_IMAGE=(hd0,msdos1)/vmlinuz-2.6.32-696.23.1.el6.x86_64 root=/dev/mapper/VolGroup-lv_root
PID hash table entries: 4096 (order: 3, 32768 bytes)
x86/fpu: xstate_offset[2]: 0240, xstate_sizes[2]: 0100
xsave/xrstor: enabled xstate_bv 0x7, cntxt size 0x340
Memory: 2034960k/2097152k available (5516k kernel code, 392k absent, 61800k reserved, 6912k data, 1332k init)
Kernel/User page tables isolation: enabled
Hierarchical RCU implementation.
NR_IRQS:33024 nr_irqs:576
Extended CMOS year: 2000
Console: colour EGA 80x25
console [ttyS0] enabled
allocated 8388608 bytes of page_cgroup
please try 'cgroup_disable=memory' option if you don't want memory cgroups
TSC: PIT calibration matches PMTIMER. 1 loops
Detected 2293.184 MHz processor.
Calibrating delay loop (skipped), value calculated using timer frequency.. 4586.36 BogoMIPS (lpj=2293184)
pid_max: default: 32768 minimum: 301
Security Framework initialized
SELinux:  Initializing.
Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
Mount-cache hash table entries: 256
Initializing cgroup subsys ns
Initializing cgroup subsys cpuacct
Initializing cgroup subsys memory
Initializing cgroup subsys devices
Initializing cgroup subsys freezer
Initializing cgroup subsys net_cls
Initializing cgroup subsys blkio
Initializing cgroup subsys perf_event
Initializing cgroup subsys net_prio
CPU: Physical Processor ID: 0
mce: CPU supports 0 MCE banks
FEATURE SPEC_CTRL Not Present
FEATURE IBPB_SUPPORT Not Present
Spectre V2 : Mitigation: Full retpoline
alternatives: switching to unfair spinlock
ACPI: Core revision 20090903
ftrace: converting mcount calls to 0f 1f 44 00 00
ftrace: allocating 22028 entries in 87 pages
APIC routing finalized to physical flat.
..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
CPU0: Intel(R) Xeon(R) CPU E3-1220L V2 @ 2.30GHz stepping 09
Performance Events: unsupported p6 CPU model 58 no PMU driver, software events only.
NMI watchdog disabled (cpu0): hardware events not enabled
Booting Node   0, Processors  #1
mce: CPU supports 0 MCE banks
 #2
mce: CPU supports 0 MCE banks
 #3 Ok.
mce: CPU supports 0 MCE banks
Brought up 4 CPUs
Total of 4 processors activated (22029.88 BogoMIPS).
devtmpfs: initialized
regulator: core version 0.5
NET: Registered protocol family 16
ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
ACPI: bus type pci registered
PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255
PCI: Not using MMCONFIG.
PCI: Using configuration type 1 for base access
bio: create slab <bio-0> at 0
ACPI: Interpreter enabled
ACPI: (supports S0 S5)
ACPI: Using IOAPIC for interrupt routing
PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255
PCI: MCFG area at e0000000 reserved in ACPI motherboard resources
PCI: Using MMCONFIG at e0000000 - efffffff
ACPI: No dock devices found.
PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
ACPI: PCI Root Bridge [PC00] (domain 0000 [bus 00])
pci_root PNP0A03:00: host bridge window [io  0x0000-0x0cf7]
pci_root PNP0A03:00: host bridge window [io  0x0d00-0x1fff]
pci_root PNP0A03:00: host bridge window [io  0x2000-0x209f]
pci_root PNP0A03:00: host bridge window [mem 0xc0000000-0xc01fffff]
pci_root PNP0A03:00: host bridge window [0xd000000000-0xd0000fffff] (ignored, not CPU addressable)
PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [io  0x0000-0x0cf7]
pci_bus 0000:00: root bus resource [io  0x0d00-0x1fff]
pci_bus 0000:00: root bus resource [io  0x2000-0x209f]
pci_bus 0000:00: root bus resource [mem 0xc0000000-0xc01fffff]
 pci0000:00: Requesting ACPI _OSC control (0x1d)
Unable to assume _OSC PCIe control. Disabling ASPM
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 *5 6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 *6 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
PCI: Using ACPI for IRQ routing
NetLabel: Initializing
NetLabel:  domain hash size = 128
NetLabel:  protocols = UNLABELED CIPSOv4
NetLabel:  unlabeled traffic allowed by default
HPET: 8 timers in total, 4 timers will be used for per-cpu timer
hpet0: at MMIO 0xfed00000, IRQs 32, 33, 34, 35, 0, 0, 0, 0
hpet0: 8 comparators, 32-bit 16.777216 MHz counter
Switching to clocksource hpet
pnp: PnP ACPI init
ACPI: bus type pnp registered
pnp: PnP ACPI: found 8 devices
ACPI: ACPI bus type pnp unregistered
system 00:03: [io  0x0220-0x0223] has been reserved
system 00:03: [io  0x0224-0x0227] has been reserved
system 00:03: [io  0x04d0-0x04d1] has been reserved
system 00:03: [io  0x0400-0x0407] has been reserved
system 00:03: [mem 0xe0000000-0xefffffff] has been reserved
pci 0000:00:01.0: BAR 6: assigned [mem 0xc0004000-0xc00047ff pref]
pci 0000:00:02.0: BAR 6: assigned [mem 0xc0004800-0xc0004fff pref]
pci 0000:00:03.0: BAR 6: assigned [mem 0xc0005000-0xc00057ff pref]
NET: Registered protocol family 2
IP route cache hash table entries: 65536 (order: 7, 524288 bytes)
TCP established hash table entries: 262144 (order: 10, 4194304 bytes)
TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
TCP: Hash tables configured (established 262144 bind 65536)
TCP reno registered
NET: Registered protocol family 1
pci 0000:00:01.0: Activating ISA DMA hang workarounds
Trying to unpack rootfs image as initramfs...
Freeing initrd memory: 15406k freed
sha256_ssse3: Using AVX optimized SHA-256 implementation
futex hash table entries: 1024 (order: 4, 65536 bytes)
audit: initializing netlink socket (disabled)
type=2000 audit(1569968280.045:1): initialized
HugeTLB registered 2 MB page size, pre-allocated 0 pages
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
msgmni has been set to 4004
ksign: Installing public key data
Loading keyring
- Added public key D44616C2464AD913
- User ID: CentOS (Kernel Module GPG key)
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
pciehp: PCI Express Hot Plug Controller Driver version: 0.4
acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
ACPI: Power Button [PWRF]
[Firmware Bug]: No valid trip found
GHES: HEST is not enabled!
Non-volatile memory driver v1.3
Linux agpgart interface v0.103
crash memory driver: version 1.1
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
?serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
00:04: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:05: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
brd: module loaded
loop: module loaded
input: Macintosh mouse button emulation as /devices/virtual/input/input1
Fixed MDIO Bus: probed
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
uhci_hcd: USB Universal Host Controller Interface driver
PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x60,0x64 irq 1,12
i8042.c: Warning: Keylock active.
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
mice: PS/2 mouse device common for all mice
ACPI Error: Could not enable RealTimeClock event (20090903/evxfevnt-193)
ACPI Warning: Could not enable fixed event 0x4 (20090903/evxface-146)
rtc_cmos 00:06: rtc core: registered rtc_cmos as rtc0
rtc0: alarms up to one day, y3k, 114 bytes nvram
cpuidle: using governor ladder
cpuidle: using governor menu
EFI Variables Facility v0.08 2004-May-17
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
GRE over IPv4 demultiplexor driver
TCP cubic registered
Initializing XFRM netlink socket
NET: Registered protocol family 17
registered taskstats version 1
input: AT Raw Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
rtc_cmos 00:06: setting system clock to 2019-10-01 22:18:02 UTC (1569968282)
Initalizing network drop monitor service
Freeing unused kernel memory: 1332k freed
Write protecting the kerUnhandled ps2 mouse command 0xe1
                                                        nel read-only data: 10240k
Freeing unused kernel memory: 608k freed
Freeing unused kernel memory: 1540k freed
dracut: dracut-004-409.el6_8.2.1.sf
udev: starting version 147
Refined TSC clocksource calibration: 2293.127 MHz.
Switching to clocksource tsc
dracut: Starting plymouth daemon
virtio-pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
virtio-pci 0000:00:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
Unhandled ps2 mouse command 0x88
                                input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input3
 vda: vda1 vda2
dracut Warning: No root device "block:/dev/mapper/VolGroup-lv_root" found

dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.


dracut Warning: Signal caught!

dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: init Not tainted 2.6.32-696.23.1.el6.x86_64 #1
Call Trace:
 [<ffffffff81552643>] ? panic+0xa7/0x18b
 [<ffffffff8112d9b0>] ? perf_event_exit_task+0xc0/0x340
 [<ffffffff81084003>] ? do_exit+0x853/0x860
 [<ffffffff8119e655>] ? fput+0x25/0x30
 [<ffffffff81084068>] ? do_group_exit+0x58/0xd0
 [<ffffffff810840f7>] ? sys_exit_group+0x17/0x20
 [<ffffffff8155e351>] ? system_call_fastpath+0x2f/0x34
```

Any thoughts, ideas?


----------



## SirDice (Oct 2, 2019)

Henning Kessler said:


> on my FreeNAS host


PC-BSD, FreeNAS, XigmaNAS, and all other FreeBSD Derivatives


----------



## Henning Kessler (Oct 2, 2019)

uuups, Sorry for messing this up. I guess this means that I should delete this post and open it as new one in the appropriate channel, right?


----------



## Henning Kessler (Oct 2, 2019)

And again I should have read before asking ;-|. I started already a thread over at the FreeNAS forums, but as the questions is very bhyve- and less FreeNAS-specific and the response is very limited (currently almost none). I thought I might ask a wider audience. 

Regards 

Henning


----------

