[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] PATCH: Don't clobber VIF 'type' field when starting a HVM guest



In the Xen 3.1.0 series releases the 'VIF' config has a 'type' field which is
used to determine if using QEMU's emulated NIC vs netfront/back.

 - type=ioemu  -> Setup QEMU with an rtl8139 nic
 - type=netfront -> Setup netback, assuming HVM pv drivers
 - type is None  -> Setup QEMU with rtl8139 nic & netback


In Fedora (and libvirt) we default to leaving 'type' as None, so that users
do not have to change the Dom0 guest config simply to install PV drivers in
an HVM guest.

There is one unfortunate bug though - when you start a managed VM, XenD will
re-save its configuration out to disk under /var/lib/xend/domains/[UUID]
and in doing so, it converts type=None into type=netfront. This isn't an
immediate problem because the config in memory is never changed & still
has correct settings. But some days/months later when the machine is rebooted
or XenD is restarted, it reads the config from disk & thus the rtl8139 nic
disappears from all your HVM guests :-(

The attached patch fixes server/netif.py so that it respects type=None as
the rest of the XenD code does. The patch is against xen-3.1-testing.hg
but also needs to be applied to xen-unstable.hg

  Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx>

Regards,
Dan.
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 

Attachment: xen-vif-type-clobber.patch
Description: Text document

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.