For testing purposes I have two identical VMs except that one is i386
and the other amd64.  They share the same tap(4) interface, so they
cannot run at the same time:

  $ vmctl status
     ID   PID VCPUS  MAXMEM  CURMEM     TTY        OWNER NAME
      1 35130     1    128M    102M   ttyp6          mpi amd64
     10     -     1    128M       -       -          mpi i386

Since I make a lot of mistakes, it generally happens that I start one
of the two while the other is running.  When this happens vmctl(8) tells
me the following:

  $ vmctl start i386 -c
  vmctl: start vm command failed: Device busy

I believe that EBUSY comes from the fact that tap0 is already in use.
However after this error my VM has disappeared and I cannot start it
without running "# vmctl reload":

  $ vmctl status
     ID   PID VCPUS  MAXMEM  CURMEM     TTY        OWNER NAME
      1 35130     1    128M    102M   ttyp6          mpi amd64


As non-privileged user this is annoying because I need to be root to
do a "reload".

Reply via email to