
2010/10/22 Daniel Veillard <veillard@redhat.com>:
On Fri, Oct 22, 2010 at 01:09:30AM +0200, Matthias Bolte wrote:
2010/10/21 Daniel Veillard <veillard@redhat.com>:
Okay, I looked at what can be done for ESX.
Looking at the SMBIOS data from _inside_ a ESX guest using dmidecode I can get this
<smbios> <table type="0"> <entry name="Vendor">Phoenix Technologies LTD</entry> <entry name="Version">6.00</entry> </table> <table type="1"> <entry name="Manufacturer">VMware Inc.</entry> <entry name="Product">VMware Virtual Platform</entry> <entry name="Version">None</entry> <entry name="Serial">VMware-[domain/uuid]</entry> <entry name="UUID">[domain/uuid]</entry> </table> </smbios>
The UUID and Serial are basically the UUID of the guest.
Putting smbios.reflecthost = "true" (defaults to false) in the VMX file results in
<smbios> <table type="0"> <entry name="Vendor">Phoenix Technologies LTD</entry> <entry name="Version">6.00</entry> </table> <table type="1"> <entry name="Manufacturer">LENOVO</entry> <entry name="Product">7673J3G</entry> <entry name="Version">None</entry> <entry name="Serial">VMware-[domain/uuid]</entry> <entry name="UUID">[domain/uuid]</entry> </table> </smbios>
So Manufacturer and Product from the type 1 table are now inherited from the SMBIOS of the physical host.
But this is all from inside the guest. From _outside_ the guest over the vSphere API I can only access "LENOVO" and "7673J3G", the data of the physical host.
To make it even worse, it seems that none of this can be edited in any way (apart from the Serial/UUID because this is the domain UUID).
Therefore, I think there is no possible useful implementation for this in the ESX driver, besides outputting static unchangeable data.
Okay, I looked up for VirtualBox, and apparently there is some support for editing some of the BIOS and system entries too based on this post http://forums.virtualbox.org/viewtopic.php?t=3224
It seems that one of the posters suggests to hack the VirtualBox codebase. It doesn't look like the XPCOM API exposes this. src/vbox/vbox_CAPI_v3_2.h in the libvirt codebase doesn't contain any SMBIOS related things. Matthias