[Avocado-devel] Issues with traversing the machine types of aarch64 QEMU

Xu Han xuhan at redhat.com
Fri Sep 22 07:36:24 UTC 2017


Hi,

On 09/21/2017 02:31 AM, Wei Huang wrote:
> Hi,
>
> I noticed the test smbios_table.machine_type (in tp-qemu) failed on my
> aarch64 machine. After debugging, it turned out to be related to the
> machine type related code in Avocado-vt. So I want to bring it up for
> discussion.
>
> Here is the analysis. In smbios_table.py, when
> traversal_machine_emulated = yes, it will retrieve all machine types
> supported by qemu_kvm. On my QEMU, the followings are the supported
> machine types:
>    * virt
>    * virt-rhel7.4.0
>    * none
> Use the first "virt" machine type as an example. The Avocado-vt code
> will use "virt" as the machine_type, instead of "arm64-pci" or
> "arm64-mmio". However this "virt" type doesn't work in many places of
> Avocado-vt code. For example, machine_by_params() function in
> qcontainer.py will not match it with any predefined machines. This cause
> the test failed to run.
>
> Using arm64-pci & arm64-mmio in Avocado-vt is fine. But I think how to
> translate the machine types in AArch64 QEMU binary to these two types
> need to be evaluated carefully.

IHO, it is not a good manner to do the machine type translation between
Avocado-VT and QEMU. I would suggest introducing an arm specified
parameter to describe the different interconnection types of the
arm machines, and keep both the machine types of arm64-pci and
arm64-mmio as 'virt'.

Thanks,
Xu

>
> Thanks,
> -Wei
>




More information about the Avocado-devel mailing list