I encountered an issue where vmd terminates unexpectedly when multiple
VMs are rebooted at the same time.

[Steps to Reproduce]

0. Environment

The issue was reproduced with the following environment on both host
and guest:

  $ uname -a
  OpenBSD nimbus13.localnet 7.8 GENERIC.MP#54 amd64
  $ sysctl kern.version
  kern.version=OpenBSD 7.8 (GENERIC.MP) #54: Sun Oct 12 12:58:11 MDT 2025
  [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP

1. Prepare four VM images with identical configurations

  -rw-r--r--  1 kaw  kaw  2147483648 Apr 21 00:08 vm0.img
  -rw-r--r--  1 kaw  kaw  2147483648 Apr 21 00:08 vm1.img
  -rw-r--r--  1 kaw  kaw  2147483648 Apr 21 00:08 vm2.img
  -rw-r--r--  1 kaw  kaw  2147483648 Apr 21 00:08 vm3.img

2. Start each VM in four separate tmux panes using the following
   script

  $ cat runvm.sh
  #!/bin/sh
  i="$1"
  case "$i" in
      [0-9]|[1-9][0-9])
        doas vmctl start -c -i 1 -n uplink -m 512M -d vm${i}.img vm78${i};;
      *)
        echo "Usage: $0 vm-num";;
  esac

3. In tmux, enable "set synchronize-panes on" and reboot all four VMs
   simultaneously

Inside each VM:

  testvm0# reboot
  syncing disks... done
  vmmci0: powerdown
  rebooting...

  [EOT]
  host$

[Result]

The VMs do not reboot successfully.

Pressing ENTER causes cu to exit and return to the host environment.

Checking with ps shows that the vmd process is no longer running.

The following messages were recorded:

in /var/log/messages:
  Apr 21 00:08:46 nimbus13 vmd[56296]: vmd: proc_dispatch: imsgbuf_write: Bad 
file descriptor
  Apr 21 00:08:46 nimbus13 vmd[89452]: failed to remap guest memory
  Apr 21 00:08:46 nimbus13 vmd[67623]: virtio_dev_launch: failed to receive 
ready message from 'd' type device
  Apr 21 00:08:46 nimbus13 vmd[67623]: vm/vm782: failed to launch virtio device

in /var/log/daemon:
  Apr 21 00:08:46 nimbus13 vmd[56296]: vmd: proc_dispatch: imsgbuf_write: Bad 
file descriptor
  Apr 21 00:08:46 nimbus13 vmd[59397]: control exiting, pid 59397
  Apr 21 00:08:46 nimbus13 vmd[53170]: priv exiting, pid 53170
  Apr 21 00:08:46 nimbus13 vmd[61651]: agentx exiting, pid 61651
  Apr 21 00:08:46 nimbus13 vmd[28300]: vmm exiting, pid 28300
  Apr 21 00:08:46 nimbus13 vmd[89452]: failed to remap guest memory
  Apr 21 00:08:46 nimbus13 vmd[67623]: virtio_dev_launch: failed to receive 
ready message from 'd' type device
  Apr 21 00:08:46 nimbus13 vmd[67623]: vm/vm782: failed to launch virtio device

Please let me know if any additional information is required.
----
Yoshihiro Kawamata
https://fuguita.org/

Reply via email to