Bug 572495 - VM PXE boot broken in qemu-0.12.3
Summary: VM PXE boot broken in qemu-0.12.3
Keywords:
Status: CLOSED DUPLICATE of bug 577851
Alias: None
Product: Fedora
Classification: Fedora
Component: qemu
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Justin M. Forbes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 579714
TreeView+ depends on / blocked
 
Reported: 2010-03-11 11:42 UTC by nochem
Modified: 2013-01-09 11:31 UTC (History)
18 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2010-05-18 19:59:54 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description nochem 2010-03-11 11:42:49 UTC
After upgrading to ovirt-node 1.9.0 with ovirt, I cannot pxe boot anymore.

In 1.9.0, libvirt was upgraded. In order to create nic cards in qemu-kvm guests, the parameter used by libvirt is now -device instead of -net nic. Patch here :

http://osdir.com/ml/libvir-list/2010-01/msg00173.html

However, qemu 0.12.2 complains at startup with such parameters :
Warning: vlan 0 with no nics

And when I try to boot from the network, qemu-kvm fails :
Cannot boot from non-existent NIC

I think this was fixed in qemu-kvm 0.12.3 :
http://permalink.gmane.org/gmane.comp.emulators.qemu/63509

But ovirt-node-image 1.9.0 ships with qemu-kvm 0.12.2

Comment 1 nochem 2010-03-11 13:50:24 UTC
upgrading qemu-kvm to 0.12.3 did not solve the issue.
The lines "warning: vlan 0 with no nics" are gone but the failure is still there when giving -boot n :

Cannot boot from non-existent NIC

Comment 2 nochem 2010-03-11 14:18:55 UTC
Observed with libvirt version : 0.7.6

Content of taskomatic.log :
INFO Thu Mar 11 15:03:33 +0100 2010 (3247) starting task_start_vm
INFO Thu Mar 11 15:03:35 +0100 2010 (3247) VM will be started on node node80.ovirt.priv
DEBUG Thu Mar 11 15:03:35 +0100 2010 (3247) Connecting volumes: 
DEBUG Thu Mar 11 15:03:36 +0100 2010 (3247) XML Domain definition: <domain type='kvm'><name>Dut-D</name><uuid>f7623dbf-2359-0d13-81ab-5b95a2457bc2</uuid><memory>1048576</memory><currentMemory></currentMemory><vcpu>1</vcpu><os><type>hvm</type><boot dev='network'/></os><clock offset='utc'/><on_poweroff>destroy</on_poweroff><on_reboot>restart</on_reboot><on_crash>destroy</on_crash><devices><emulator>/usr/bin/qemu-kvm</emulator><interface type='bridge'><model type='e1000'/><mac address='02:5A:3B:27:00:00'/><source bridge='breth0'/></interface><interface type='bridge'><model type='e1000'/><mac address='00:16:3e:49:23:fc'/><source bridge='brvp'/></interface><input bus='ps2' type='mouse'/><graphics type='vnc' port='-1' listen='0.0.0.0'/><serial type='tcp'><target port='0'/><protocol type='telnet'/><source mode='bind' service='5828' host='0.0.0.0'/></serial></devices><features><acpi/><apic/></features></domain>
ERROR Thu Mar 11 15:03:39 +0100 2010 (3247) Task action processing failed: RuntimeError: Error creating virtual machine: Error: Error creating new domain (virDomainCreate). Subsystem qemu: monitor socket did not show up.: Connection refused in DomainWrap.cpp:ManagementMethod:115
ERROR Thu Mar 11 15:03:39 +0100 2010 (3247) /usr/share/ovirt-server/task-omatic/taskomatic.rb:436:in `task_start_vm'/usr/share/ovirt-server/task-omatic/taskomatic.rb:937:in `mainloop'/usr/share/ovirt-server/task-omatic/taskomatic.rb:923:in `each'/usr/share/ovirt-server/task-omatic/taskomatic.rb:923:in `mainloop'/usr/share/ovirt-server/task-omatic/taskomatic.rb:889:in `loop'/usr/share/ovirt-server/task-omatic/taskomatic.rb:889:in `mainloop'/usr/share/ovirt-server/task-omatic/taskomatic.rb:990
INFO Thu Mar 11 15:03:39 +0100 2010 (3247) done



Content of /var/log/libvirt/qemu/Dut-D.log :

LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none /usr/bin/qemu-kvm -S -M pc-0.12 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name Dut-D -uuid f7623dbf-2359-0d13-81ab-5b95a2457bc2 -nodefaults -chardev socket,id=monitor,path=/var/lib/libvirt/qemu/Dut-D.monitor,server,nowait -mon chardev=monitor,mode=readline -boot n -device e1000,vlan=0,id=net0,mac=02:5a:3b:27:00:00,bus=pci.0,addr=0x4 -net tap,fd=25,vlan=0,name=hostnet0 -device e1000,vlan=1,id=net1,mac=00:16:3e:49:23:fc,bus=pci.0,addr=0x5 -net tap,fd=26,vlan=1,name=hostnet1 -chardev socket,id=serial0,host=0.0.0.0,port=5828,telnet,server,nowait -device isa-serial,chardev=serial0 -usb -vnc 0.0.0.0:0 -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 
Warning: vlan 0 with no nics
Warning: vlan 1 with no nics
Cannot boot from non-existent NIC

Comment 3 Daniel Veillard 2010-03-16 14:26:38 UTC
"Cannot boot from non-existent NIC"  while there is 2 e1000 network devices
defined on the command line.
Sounds like a qemu bug,

Daniel

Comment 4 Daniel Berrangé 2010-03-16 14:33:49 UTC
It appears that PXE fails when disks are presented using '-device' instead of '-net nic'

Comment 5 nochem 2010-03-16 14:34:38 UTC
    Downgrading to libvirt 0.7.5 fixes the problem.

    To do this "live" :
    - download those rpms and copy them to the node :
    scp libvirt-0.7.5-1.fc12.x86_64.rpm libvirt-client-0.7.5-1.fc12.x86_64.rpm
    libvirt-python-0.7.5-1.fc12.x86_64.rpm root@node24:/tmp

    - in the node : 
    cd /tmp
    rpm -Uvh --oldpackage libvirt-python-0.7.5-1.fc12.x86_64.rpm
    libvirt-client-0.7.5-1.fc12.x86_64.rpm libvirt-0.7.5-1.fc12.x86_64.rpm
    /etc/init.d/libvirtd start

Comment 6 Alan Pevec 2010-03-25 10:46:56 UTC
workaround in ovirt-node 1.9.1 is to exclude F12 virt-preview repo.
With qemu-0.11.0-13.fc12 and libvirt-0.7.1-15.fc12 VM PXE boot works fine.

Comment 7 Eduardo Habkost 2010-04-13 15:58:59 UTC
Fix submitted upstream: http://marc.info/?l=qemu-devel&m=127059288329503

Comment 8 Cole Robinson 2010-05-18 19:59:54 UTC
Should be fixed in qemu-0.12.3-8.fc13

*** This bug has been marked as a duplicate of bug 577851 ***


Note You need to log in before you can comment on or make changes to this bug.