On 9/23/15 09:18, Andrew Jones wrote:
> ARM/AArch64 KVM guests don't have any way to identify
> themselves as KVM guests (x86 guests use a CPUID leaf). Now, we
> could discuss all sorts of reasons why guests shouldn't need to
> know that, but then there's always some case where it'd be

One example is for the subscription manager to check the license type...

> nice... Anyway, now that we have SMBIOS tables in ARM guests,
> it's easy for the guest to know that it's a QEMU instance. This
> patch takes that one step further, also identifying KVM, when
> appropriate. Again, we could debate why generally nothing
> should care whether it's of type QEMU or QEMU/KVM, but again,
> sometimes it's nice to know...
> 
> Signed-off-by: Andrew Jones <drjo...@redhat.com>
> ---
>  hw/arm/virt.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> index 6bf0d6d591d6c..607d448354a8c 100644
> --- a/hw/arm/virt.c
> +++ b/hw/arm/virt.c
> @@ -855,12 +855,17 @@ static void virt_build_smbios(VirtGuestInfo *guest_info)
>      FWCfgState *fw_cfg = guest_info->fw_cfg;
>      uint8_t *smbios_tables, *smbios_anchor;
>      size_t smbios_tables_len, smbios_anchor_len;
> +    const char *product = "QEMU Virtual Machine";
>  
>      if (!fw_cfg) {
>          return;
>      }
>  
> -    smbios_set_defaults("QEMU", "QEMU Virtual Machine",
> +    if (kvm_enabled()) {
> +        product = "KVM Virtual Machine";
> +    }
> +
> +    smbios_set_defaults("QEMU", product,
>                          "1.0", false, true, SMBIOS_ENTRY_POINT_30);
>  
>      smbios_get_tables(NULL, 0, &smbios_tables, &smbios_tables_len,
> 

Reviewed-by: Wei Huang <w...@redhat.com>

Reply via email to