Hi Andrea,
Thanks for the reply;
To shed some more light on the matter I performed a few more tests; each
time doing a clean install. I installed ubuntu14.04 as the guest OS,
keeping everything else the same.
On my custom Linux I've created ubuntu VMs before (using ide drivers) and
it all works file. This time I created the VM using virtio disk drivers and
the installation didn't even finish. It reported a disk related error
saying it's not being able to read from /dev/vda. I restarted the
machine...same error.
Just to make sure that I have not messed anything up, I did the same on
the ubuntu host, so installed ubuntu guest on an ubuntu host uding the same
guest config xml. This time everything worked fine. So it looks like a
problem with the kvm virtio drivers.
I was trying to stay away from updating the qemu package because adding
the package takes a long time (usually, because of missing dependencies),
but I'm not sure I have any other option at this point...
Andrei
On Wed, Oct 5, 2016 at 2:45 PM, Andrea Bolognani <abologna(a)redhat.com>
wrote:
On Wed, 2016-10-05 at 12:13 +0100, Andrei Perietanu wrote:
> I just ran into a problem I can't make heads or tails of,
> so I'm hoping to get some help here.
>
> I have a custom built Embedded Linux running qemu-kvm
> 1.1.2 and libvirt 1.2.20
>
> I'm creating a domain with the following config:
>
> <domain type='kvm'>
> <name>myVM</name>
> <memory unit='KiB'>2097152</memory>
> <vcpu placement='static'>2</vcpu>
> <os>
> <type arch='x86_64'>hvm</type>
> <boot dev='hd'/>
> <boot dev='cdrom'/>
> </os>
> <features>
> <acpi/>
> <apic/>
> </features>
> <cpu mode='host-model'/>
> <clock offset='utc'>
> <timer name='rtc' tickpolicy='catchup'/>
> <timer name='pit' tickpolicy='delay'/>
> <timer name='hpet' present='no'/>
> </clock>
> <on_poweroff>destroy</on_poweroff>
> <on_reboot>restart</on_reboot>
> <on_crash>restart</on_crash>
> <devices>
> <disk type='file' device='cdrom'>
> <driver name='qemu' type='raw'/>
> <target dev='hdb' bus='ide'/>
> <source file='custom.iso'/>
> <readonly/>
>
> </disk>
> <disk type='file' device='disk'>
> <driver name='qemu' type='qcow2'/>
> <source file='/path/to/vdisk.img'/>
> <target dev='vda' bus='virtio'/>
> </disk>
> <controller type='pci' model='pci-root'/>
> <controller type='usb'/>
> <controller type='ide'/>
> <interface type='bridge'>
> <source bridge='virbr0'/>
> <model type='virtio'/>
> </interface>
>
> <serial type='pty'>
> <target port='0'/>
> </serial>
> <console type='pty'>
> <target type='serial' port='0'/>
> </console>
> <input type='tablet' bus='usb'/>
> <input type='mouse' bus='ps2'/>
> <input type='keyboard' bus='ps2'/>
> <graphics type='vnc' port='-1' autoport='yes'/>
> <video>
> <model type='qxl' ram='65536' vram='65536'
vgamem='16384'
heads='1'/>
> </video>
> <watchdog model='i6300esb' action='reset'/>
> <memballoon model='none'/>
> </devices>
> </domain>
There doesn't seem to be anything obviously wrong with your
guest configuration.
> Granted the OS I'm installing is again a custom Linux with
> some software running on top ..so It's not a well known
> OS...but I'm hoping that does not matter much.
It shouldn't.
> After installation I get all sorts of kernel panics and
> errors about services not being able to start.
Wait, so the OS installer is perfectly happy and runs to
completion, but once you boot the installed OS you get a
bunch of errors?
That sounds more like a faulty guest OS configuration than
anything wrong with the virtual hardware. It most certainly
doesn't sound like it could be anything disk related,
because if that was the case the installer wouldn't have
been able to access it in the first place.
"All sorts of kernel panics and errors about services not
being able to start" is *extremely* generic though, you'll
have to be way more specific if you hope to get any help :)
> So I tried the same thing on ubuntu 14.04.2 LTS which
> installed qemu-kvm 2.0.0 and libvirt 1.2.2
>
> Same config xml, but this time it worked better -I was
> not getting the kernel panics.
Did you perform a new installation on the Ubuntu host?
Or did you copy the qcow2 image over from the custom
Linux host? Did you try going the other way around, eg.
copy the working guest from the Ubuntu host to the
custom Linux host?
> The OS I'm installing does not support IDE disks, it
> needs a virtio disk.
And your guest configuration supplies one, so you should
be all set on that front.
> The obvious solution here would be to try and get a newer
> version of qemu, but since we're talking about a custom
> built Linux I'd have to add the package manually and
> compile from source...which cakes a long time to do. So
> before attempting that....just wondering....is there a
> better way? Anything I can try?
I think you're seriously overestimating the time it would
take to compile QEMU or libvirt from source ;)
An hour or so should be plenty to rebuild both components
from source, and most of that time would be spent figuring
out and gathering the build requirements rather than
compiling.
--
Andrea Bolognani / Red Hat / Virtualization
--
The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. Any review, retransmission, dissemination or other use of or
taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you receive
this in error please contact the sender and delete the material from any
computer immediately. It is the policy of Klas Limited to disavow the
sending of offensive material and should you consider that the material
contained in the message is offensive you should contact the sender
immediately and also your I.T. Manager.
Klas Telecom Inc., a Virginia Corporation with offices at 1101 30th St. NW,
Washington, DC 20007.
Klas Limited (Company Number 163303) trading as Klas Telecom, an Irish
Limited Liability Company, with its registered office at Fourth Floor, One
Kilmainham Square, Inchicore Road, Kilmainham, Dublin 8, Ireland.