[libvirt] [PATCH] 0/4 Add SMBIOS settings to domain definition
Daniel P. Berrange
berrange at redhat.com
Fri Oct 22 08:28:48 UTC 2010
On Thu, Oct 21, 2010 at 09:52:51PM +0200, Daniel Veillard wrote:
> The SMBIOS data are a standardized set of data structures available
> in the BIOS area of PCs. Those blocks of data describe things like
> BIOS version informations, machine vendor, model and identifiers,
> as well as various parts of the machine capability. On a linux
> machine running dmidecode allows to dump those informations.
>
> Spec available at the DMTF: http://dmtf.org/standards/smbios
>
> From a virtualization POV, it's mostly the first block describing
> the BIOS named "type 0" and the second block describing the machine
> named "type 1" which are of interest. Those data are usually accessed
> either from the OS or from management application, and being able to
> override the default setings may be needed for such management.
>
> The suggested XML description follows the logical structure of the
> data, one top smbios description, with one or more blocks, each
> containing the entries, the example below gives an idea:
>
> <smbios>
> <table type="0">
> <entry name="Vendor">QEmu/KVM</entry>
> <entry name="Version">0.13</entry>
> </table>
> <table type="1">
> <entry name="Manufacturer">Fedora</entry>
> <entry name="Product">Virt-Manager</entry>
> <entry name="Version">0.8.2-3.fc14</entry>
> <entry name="UUID">c7a5fdbdedaf9455926ad65c16db1809</entry>
> </table>
> </smbios>
I've never really been a fan of the idea of including SMBios
data in the XML because it is an x86 specific concept, which
only works with HVM guests & the type=1/2/3 is rather opaque
in meaning.
I can't help thinking that we should define a set of general
metadata tags, and then have a internal mapping of those to
SMBIOS fields, in the same way that the <uuid> is automatically
mapped to SMBIOS.
eg, define a set of metadata like this:
<metadata>
<bios-vendor>SeaBIOS</bios-vendor>
<bios-version>0.13</bios-version>
<system-manufacturer>Fedora</system-manufacturer>
<system-product>KVM</system-product>
<system-version>0.8.2</system-version>
<system-uuid>c7a5fdbdedaf9455926ad65c16db1809</system-uuid>
</metadata>
And for smbios just indicate what the source of the data is:
<smbios mode="host|emulate"/>
host - copy from host SMBIOS
emulate - generic emulator settings + metadata overrides
This would map better to what VMWare is letting you do, and let us expose
the metadata through other non-SMBIOS data channels
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 :|
More information about the libvir-list
mailing list