Bug 621903

Summary: Booting Virtual Domain fails on "Grub Loading"
Product: [Community] Virtualization Tools Reporter: M. Enslin <michaelenslin>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: unspecifiedCC: crobinso, mkletzan, xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-04-14 13:41:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description M. Enslin 2010-08-06 13:04:21 UTC
Description of problem:
If trying to boot from virtual harddisk, booting fails with staying at "Grub loading" and 100% CPU usage. Booting from virtual CD-Rom succeeds.

Actual host is a self-virtualized system with a recent x64-Gentoo. It is a test system to migrate some HP-Blade-Servers from kvm to kvm&libvirt.



The following configuration is for a simple testsystem:
<domain type='qemu'>
  <name>Ipfire</name>
  <uuid>0068989a-21ae-4f38-900f-21571808da9a</uuid>
  <memory>128200</memory>
  <currentMemory>128200</currentMemory>
  <vcpu>1</vcpu>
  <os>
    <type arch='x86_64' machine='pc'>hvm</type>
    <boot dev='hd'/>
  </os>
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <source file='/home/virt/system/ipfire3.sys'/>
      <target dev='hda'/>
    </disk>
    <graphics type='vnc' port='5900' listen='0.0.0.0'/>
  </devices>
</domain>

Libvirt produces following output to start qemu:
/usr/bin/qemu-system-x86_64 -S -M pc -no-kvm -m 125 -smp 1,sockets=1,cores=1,threads=1 -name Ipfire -uuid 0068989a-21ae-4f38-900f-21571808da9a -nodefaults -chardev socket,id=monitor,path=/home/virt/.libvirt/qemu/lib/Ipfire.monitor,server,nowait -mon chardev=monitor,mode=readline -rtc base=utc -no-acpi -boot c -drive file=/home/virt/system/ipfire3.sys,if=none,id=drive-ide0-0-0,boot=on -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -usb -vnc 0.0.0.0:0 -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3

If I start qemu manually with these parameters the system also fails to boot (same error).

If I set "boot=off" instead of "boot=on" or remove "boot=on", the system succeeds booting.
Setting drive as SCSI or virtio does not help



Version-Release number of selected component (if applicable):
The current version of libvirt & kvm (prior versions were also tested negative):
Compiled against library: libvir 0.8.2
Using library: libvir 0.8.2
Using API: QEMU 0.8.2
Running hypervisor: QEMU 0.12.4

How reproducible:
always

Steps to Reproduce:
see above
  
Actual results:
Virtual Domains not booting from virtual harddisks

Expected results:
Virtual Domains booting from virtual harddisks

Additional info:

Comment 1 Martin Kletzander 2015-04-14 13:41:48 UTC
This was probably a bug in QEMU, but anyway, libvirt is using bootindex now, so this shouldn't be a problem.  Reopen if you disagree.