[libvirt] qemu can't parse floppy cmdline

Daniel P. Berrange berrange at redhat.com
Tue Feb 9 10:43:59 UTC 2010


On Mon, Feb 08, 2010 at 06:29:40PM -0500, Cole Robinson wrote:
> Hi Dan,
> 
> With qemu-0.12.2-5.fc13.x86_64 in fedora, libvirt is generating a cmdline
> which qemu-kvm can't parse. XML is:
> 
> <domain type='kvm'>
>   <name>winxp_32</name>
>   <uuid>3485e26d-c370-c0b0-32e2-a041a12f5cfc</uuid>
>   <memory>1048576</memory>
>   <currentMemory>1048576</currentMemory>
>   <vcpu>1</vcpu>
>   <os>
>     <type arch='x86_64' machine='pc-0.11'>hvm</type>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/>
>     <apic/>
>     <pae/>
>   </features>
>   <clock offset='localtime'/>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>restart</on_reboot>
>   <on_crash>restart</on_crash>
>   <devices>
>     <emulator>/usr/bin/qemu-kvm</emulator>
>     <disk type='file' device='disk'>
>       <driver name='qemu'/>
>       <source file='/mnt/devel/vms/disks/winxp_32.qcow2.img'/>
>       <target dev='hda' bus='ide'/>
>       <address type='drive' controller='0' bus='0' unit='0'/>
>     </disk>
>     <disk type='file' device='cdrom'>
>       <driver name='qemu'/>
>       <source file='/mnt/devel/media/win_2003_64.iso'/>
>       <target dev='hdc' bus='ide'/>
>       <readonly/>
>       <address type='drive' controller='0' bus='1' unit='0'/>
>     </disk>
>     <disk type='file' device='cdrom'>
>       <target dev='hdb' bus='ide'/>
>       <readonly/>
>       <address type='drive' controller='0' bus='0' unit='1'/>
>     </disk>
>     <disk type='file' device='floppy'>
>       <driver name='qemu' type='raw'/>
>       <source file='/var/lib/libvirt/images/1.img'/>
>       <target dev='fda' bus='fdc'/>
>       <address type='drive' controller='0' bus='0' unit='0'/>
>     </disk>
>     <controller type='ide' index='0'/>
>     <controller type='fdc' index='0'/>
>     <interface type='network'>
>       <mac address='52:54:00:5d:46:22'/>
>       <source network='default'/>
>       <target dev='vnet0'/>
>     </interface>
>     <serial type='pty'>
>       <target port='0'/>
>     </serial>
>     <console type='pty'>
>       <target port='0'/>
>     </console>
>     <input type='tablet' bus='usb'/>
>     <input type='mouse' bus='ps2'/>
>     <graphics type='vnc' port='-1' autoport='yes'/>
>     <sound model='es1370'/>
>     <video>
>       <model type='vga' vram='9216' heads='1'/>
>     </video>
>   </devices>
> </domain>
> 
> The generated cmdline is:
> 
> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none
> /usr/bin/qemu-kvm -S -M pc-0.11 -enable-kvm -m 1024 -smp

[snip]

> -global isa-fdc,driveA=drive-fdc0-0-0 -device

[snip]

> can't parse: "isa-fdc,driveA=drive-fdc0-0-0"

This was a bug in the 0.12.0 release of QEMU, but I could have sworn this was
fixed in the next update. I'll have to check with Markus Armbruster to see
what's gone wrong/missing

> If I drop the floppy dev and controller, the guest boots, but a few warnings
> are printed. Not sure if any of this reflects qemu bugs or libvirt bugs:
> 
> LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin QEMU_AUDIO_DRV=none
> /usr/bin/qemu-kvm -S -M pc-0.11 -enable-kvm -m 1024 -smp
> 1,sockets=1,cores=1,threads=1 -name winxp_32 -uuid
> 3485e26d-c370-c0b0-32e2-a041a12f5cfc -nodefaults -chardev
> socket,id=monitor,path=/var/lib/libvirt/qemu/winxp_32.monitor,server,nowait
> -mon chardev=monitor,mode=readline -localtime -boot c -drive
> file=/mnt/devel/vms/disks/winxp_32.qcow2.img,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 -drive
> file=/mnt/devel/media/win_2003_64.iso,if=none,media=cdrom,id=drive-ide0-1-0
> -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive
> if=none,media=cdrom,id=drive-ide0-0-1 -device
> ide-drive,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1 -device
> rtl8139,vlan=0,id=net0,mac=52:54:00:5d:46:22,bus=pci.0,addr=0x4 -net
> tap,fd=37,vlan=0,name=hostnet0 -chardev pty,id=serial0 -device
> isa-serial,chardev=serial0 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:0
> -vga std -device ES1370,id=sound0,bus=pci.0,addr=0x5 -device
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3
> 
> char device redirected to /dev/pts/2
> Warning: vlan 0 with no nics
> Option 'ipv4': Use 'on' or 'off'
> Failed to parse "yes" for "dummy.ipv4"

These three lines of warnings are all harmless

Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list