[Libvir] <model>e1000</model> - Specifying model in XML Configs

Henri Cook henri at theplayboymansion.net
Tue Apr 8 09:19:02 UTC 2008

I've made a hack for this in the meantime that adds the <model></model>
option to the <interface> section and allows me to pass in any string
for addition - since I really wanted this functionality. Obviously this
means i'm now compiling my Ubuntu package from source which isn't ideal,
it'll probably get overwritten by apt at any moment :o

Also, i got in a bit of a pickle last night which I had to reboot to fix:

root at mintaka:~# /usr/sbin/libvirtd -d
libvir: QEMU error : cannot create bridge 'virbr0' : File exists
Failed to autostart network 'default': cannot create bridge 'virbr0' :
File exists

Is there a way to fix this without rebooting? ifconfig virbr0
down && brctl delbr virbr0 - doesn't seem to be enough, what did I miss?

On the <model> options - an error message does seem like the best
option: with model=foo in the -net options

qemu: Unsupported NIC: foo

I'd love to put all that in myself but my C-fu is seriously limited - I
can only do simple work without more time to learn things properly, like
adding things to the XML based on all the previous examples *g*



Daniel Veillard wrote:
> On Tue, Apr 08, 2008 at 09:05:41AM +0100, Richard W.M. Jones wrote:
>> On Mon, Apr 07, 2008 at 10:51:56PM +0100, Henri Cook wrote:
>>> I just tried to port a few customers over to this libvirt setup i'm
>>> hoping to run and I couldn't get their machines started because there's
>>> no mechanism to specify a model in the XML!
>>> I know redhat have changed KVM's default driver to e1000, which I think
>>> is the one I like the most and almost if not all of my VMs use. Ubuntu
>>> haven't done that yet however!
>>> Is there a model directive in the latest version? In the works? Just so
>>> I know which solution I should pursue (updating libvirt or harassing
>>> ubuntu to change the default)
>> There isn't a way to select the model, but there ought to be.  In KVM
>> 64 the following NIC models are supported:
>>   i82551 i82557b i82559er ne2k_pci pcnet rtl8139 e1000 virtio
>> Part of the problem with implementing this will be validating the
>> model (unless we just pass the model string directly to qemu which
>> could lead to errors).  The documentation suggests running qemu with
>> '-net nic,model=?' to list the models, and there is code in
>> qemu/hw/pci.c to implement this, but it just doesn't work for me.
> Then what happen if you pass a wrong string ? Is there any way to get a
> meaningful error back from qemu and report it. Thet would IMHO be quite
> better than tracking the evolution of the emulation in QEmu, plus the
> added benefit of not being tied to a strict version of QEmu,
> Daniel

More information about the libvir-list mailing list