Xen / libvirt - "End of file while reading data: Input/output error" when attempting to start a domain

22,080

Seems to me, we are facing the same problem.

Please look at Bugzilla – Bug 909547 https://bugzilla.opensuse.org/show_bug.cgi?id=909547

and temporary partial workaround (until host reboot !!) described in opensuse forum https://forums.opensuse.org/showthread.php/502307-openSUSE-13-1-gt-13-2-upgrade-issues-with-xen-libvirt-and-virt-manager

Workaround:

  1. As root make sure that there is nothing listed in the Virtual Machine Manager, and confirm there are no vm's running using xl list or virsh list.

  2. Go to Yast > Software > Software Management, search for libvirt. Delete libvirt, libvirt-daemon, libvirt-glib-1_0-0, libvirt-python, and perl-Sys-Virt, when prompted with conflicts, use the first option to deinstall the conflicts.

  3. Backup or delete /usr/share/virt-manager, and it's contents. (The folder will be recreated upon re-installation.)
  4. Reboot using xen hypervisor, and login as root. (As a rule I have not been doing this using the desktop kernel)
  5. Follow step 2 expect this time install the listed packages.
  6. In Yast > Virtualization > Install Hypervisor and Tools tick only xen tools, then Ok.

    If at this point you would happen to reboot. It will break the system and you get the EOF error trying to install a virtual machine.

  7. Go to the Launcher > Applications > System > Virtualization > Virtual Machine Manager. There should be nothing listed except the local host (xen).

  8. Now you have two choices to installing a virtual machine by either clicking the "Create a new virtual machine" button which I believe uses virt-install, or clicking on the arrow next to the button, then clicking on vm-install. (I've been using the latter)
Share:
22,080

Related videos on Youtube

Adam Luchjenbroers
Author by

Adam Luchjenbroers

.

Updated on September 18, 2022

Comments

  • Adam Luchjenbroers
    Adam Luchjenbroers almost 2 years

    I'm getting the following string of errors when I attempt to start a domain using virsh:

    virsh # start vimes
    error: Failed to start domain vimes
    error: End of file while reading data: Input/output error
    error: Failed to reconnect to the hypervisor
    

    Tailing the log files as this happen, I get the following output:

    /var/log/libvirt/libxl/vimes.log

    libxl: debug: libxl_create.c:1362:do_domain_create: ao 0x7f4e1c0017e0: create: how=(nil) callback=(nil) poller=0x7f4e1c0019c0
    

    dmesg

    [  852.559719] libvirtd[2187]: segfault at ffffffffffffffff ip 00007f4e45472614 sp 00007f4e3e6b60d8 error 7 in libc-2.19.so[7f4e453ed000+19e000]
    

    /var/log/libvirt/libxl/libxl-driver.log

    xc: debug: hypercall buffer: cache current size:4
    xc: debug: hypercall buffer: cache hits:13 misses:4 toobig:1
    xc: debug: hypercall buffer: total allocations:18 total releases:18
    xc: debug: hypercall buffer: current allocations:0 maximum allocations:4
    xc: debug: hypercall buffer: cache current size:4
    xc: debug: hypercall buffer: cache hits:13 misses:4 toobig:1
    xc: debug: hypercall buffer: total allocations:18 total releases:18
    xc: debug: hypercall buffer: current allocations:0 maximum allocations:4
    xc: debug: hypercall buffer: cache current size:4
    xc: debug: hypercall buffer: cache hits:13 misses:4 toobig:1
    

    I'm at a bit of a loss about how to proceed. It's not clear from the error messages what's actually going wrong. Host and guest are both running OpenSuse 13.2,

    • Michael Hampton
      Michael Hampton over 9 years
      Edit /etc/libvirt/libvirtd.conf and change log_level to 1. Then reload libvirtd and try again. You should get a much more detailed and hopefully helpful log.
    • Adam Luchjenbroers
      Adam Luchjenbroers over 9 years
      I've set that and restarted libvirtd, but it doesn't appear to have any affect on the output. I can get more output with 'LIBVIRT_DEBUG=1 virsh start vimes' though. I've put the dump from that up on Pastebin: pastebin.com/xYQV8n72