[libvirt] Revamped Smbios/Sysinfo support

This patch set implements a new way to store system informations and pass them to the domain, it's modelled on the SMBIOS support in hypervisors and allow to override those informations in domains: The simplest is the use of: <smbios mode="host"/> in which case the domain will try to inherit those values from the Host own values, the classical use case is the use of OEM'ed Windows versions where one need to export SMBIOS informations from the host to the guest. But the <sysinfo> construct allows to define those informations, for example: <sysinfo type="smbios"> <bios> <entry name="vendor">QEmu/KVM</entry> <entry name="version">0.13</entry> </bios> <system> <entry name="manufacturer">Fedora</entry> <entry name="product">Virt-Manager</entry> <entry name="version">0.8.2-3.fc14</entry> <entry name="serial">32dfcb37-5af1-552b-357c-be8c3aa38310</entry> <entry name="uuid">c7a5fdbd-edaf-9455-926a-d65c16db1809</entry> </system> </sysinfo> <smbios mode="sysinfo"/> In that case libvirt hypervisor driver will try to set up those values in the domain emulation. The patch set attached implement those modes for QEmu, and based on our previous reviews with Matthias the first mode should be implementable in the ESX driver (for just a couple of settings though) and the VirtualBox driver should be abble to implement both if we understood correctly, Daniel

Note, this should be the [PATCH 0/7] mail but apparently --cover-letter and --compose options of git send-email don't do what I was hoping it would, I got an editor opened for the first one, but had only the option of cancelling the 0/7 one not edit it as I expected... Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/

On Tue, Nov 02, 2010 at 05:36:41PM +0100, Daniel Veillard wrote:
This patch set implements a new way to store system informations and pass them to the domain, it's modelled on the SMBIOS support in hypervisors and allow to override those informations in domains:
The simplest is the use of:
<smbios mode="host"/>
in which case the domain will try to inherit those values from the Host own values, the classical use case is the use of OEM'ed Windows versions where one need to export SMBIOS informations from the host to the guest. But the <sysinfo> construct allows to define those informations, for example:
<sysinfo type="smbios"> <bios> <entry name="vendor">QEmu/KVM</entry> <entry name="version">0.13</entry> </bios> <system> <entry name="manufacturer">Fedora</entry> <entry name="product">Virt-Manager</entry> <entry name="version">0.8.2-3.fc14</entry> <entry name="serial">32dfcb37-5af1-552b-357c-be8c3aa38310</entry> <entry name="uuid">c7a5fdbd-edaf-9455-926a-d65c16db1809</entry> </system> </sysinfo> <smbios mode="sysinfo"/>
The <sysinfo> is fine at the top level, but the <smbios> element should be kept within the <os> element, because that is the container we have for all BIOS related config parameters, and whether you can use <smbios> or not is conditional on <os type='hvm'/> (ie you can't use it with type=xen or type=exe). Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

On Wed, Nov 03, 2010 at 11:36:45AM +0000, Daniel P. Berrange wrote:
On Tue, Nov 02, 2010 at 05:36:41PM +0100, Daniel Veillard wrote:
This patch set implements a new way to store system informations and pass them to the domain, it's modelled on the SMBIOS support in hypervisors and allow to override those informations in domains:
The simplest is the use of:
<smbios mode="host"/>
in which case the domain will try to inherit those values from the Host own values, the classical use case is the use of OEM'ed Windows versions where one need to export SMBIOS informations from the host to the guest. But the <sysinfo> construct allows to define those informations, for example:
<sysinfo type="smbios"> <bios> <entry name="vendor">QEmu/KVM</entry> <entry name="version">0.13</entry> </bios> <system> <entry name="manufacturer">Fedora</entry> <entry name="product">Virt-Manager</entry> <entry name="version">0.8.2-3.fc14</entry> <entry name="serial">32dfcb37-5af1-552b-357c-be8c3aa38310</entry> <entry name="uuid">c7a5fdbd-edaf-9455-926a-d65c16db1809</entry> </system> </sysinfo> <smbios mode="sysinfo"/>
The <sysinfo> is fine at the top level, but the <smbios> element should be kept within the <os> element, because that is the container we have for all BIOS related config parameters, and whether you can use <smbios> or not is conditional on <os type='hvm'/> (ie you can't use it with type=xen or type=exe).
Hum, right, something to fix there, yes Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/
participants (2)
-
Daniel P. Berrange
-
Daniel Veillard