On Wed, Mar 21, 2018 at 10:12:16PM -0500, Wei Huang wrote: > Instead of using "1.0" as the system version of SMBIOS, we should use > mc->desc for mach-virt machine type. With this patch, "dmidecode -t 1" > (e.g., "-M virt-2.12,accel=kvm") will show: > > Handle 0x0100, DMI type 1, 27 bytes > System Information > Manufacturer: QEMU > Product Name: KVM Virtual Machine > Version: QEMU 2.12 ARM Virtual Machine > Serial Number: Not Specified > ... > > instead of: > Handle 0x0100, DMI type 1, 27 bytes > System Information > Manufacturer: QEMU > Product Name: KVM Virtual Machine > Version: 1.0 > Serial Number: Not Specified > ... > > Signed-off-by: Wei Huang <w...@redhat.com> > --- > hw/arm/virt.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index 2c07245047..da7228b297 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -1132,6 +1132,7 @@ static void *machvirt_dtb(const struct arm_boot_info > *binfo, int *fdt_size) > > static void virt_build_smbios(VirtMachineState *vms) > { > + MachineClass *mc = MACHINE_GET_CLASS(vms); > uint8_t *smbios_tables, *smbios_anchor; > size_t smbios_tables_len, smbios_anchor_len; > const char *product = "QEMU Virtual Machine"; > @@ -1145,7 +1146,7 @@ static void virt_build_smbios(VirtMachineState *vms) > } > > smbios_set_defaults("QEMU", product, > - "1.0", false, true, SMBIOS_ENTRY_POINT_30); > + mc->desc, false, true, SMBIOS_ENTRY_POINT_30); > > smbios_get_tables(NULL, 0, &smbios_tables, &smbios_tables_len, > &smbios_anchor, &smbios_anchor_len); > -- > 2.14.3
I agree we should change the useless 1.0, but shouldn't we use mc->name instead of mc->desc? mc->name would make it consistent with pc-piix and q35 and also be a less verbose "version". We'd get e.g. System Information Manufacturer: QEMU Product Name: KVM Virtual Machine Version: virt-2.12 Serial Number: Not Specified Thanks, drew