On Fri, May 10, 2019 at 02:20:25PM +0200, Michal Privoznik wrote:
> https://bugzilla.redhat.com/show_bug.cgi?id=1426162
> 
> Turns out, some aarch64 systems have SMBIOS info. That means we

In fact aarch64 are required to support SMBIOS if they want to
be compliant with the Server Base Boot Requirements spec. This
effectively covers any aarch64 machine targetted as data center
servers.

> can use dmidecode to fetch some information. If that fails, fall
> back to the old behaviour.
> 
> Signed-off-by: Michal Privoznik <[email protected]>
> ---
>  src/util/virsysinfo.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/src/util/virsysinfo.c b/src/util/virsysinfo.c
> index b371e8dd26..83da3897ce 100644
> --- a/src/util/virsysinfo.c
> +++ b/src/util/virsysinfo.c
> @@ -192,6 +192,14 @@ void virSysinfoDefFree(virSysinfoDefPtr def)
>  }
>  
>  
> +static bool
> +virSysinfoDefEmpty(const virSysinfoDef *def)
> +{
> +    return !(def->bios || def->system || def->nbaseBoard ||
> +             def->chassis || def->nprocessor || def->nmemory || 
> def->oemStrings);
> +}
> +
> +
>  static int
>  virSysinfoParsePPCSystem(const char *base, virSysinfoSystemDefPtr *sysdef)
>  {
> @@ -433,6 +441,16 @@ virSysinfoReadARM(void)
>      virSysinfoDefPtr ret = NULL;
>      char *outbuf = NULL;
>  
> +    /* Some ARM systems have DMI tables available. */
> +    if ((ret = virSysinfoReadDMI())) {
> +        if (!virSysinfoDefEmpty(ret))
> +            return ret;
> +        virSysinfoDefFree(ret);
> +    }
> +
> +    /* Well, we've tried. Fall back to parsing cpuinfo */
> +    virResetLastError();
> +
>      if (VIR_ALLOC(ret) < 0)
>          goto no_memory;
>  
> -- 
> 2.21.0
> 
> --
> libvir-list mailing list
> [email protected]
> https://www.redhat.com/mailman/listinfo/libvir-list

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to