qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 00/33] hw/cpu/arm: Remove one use of qemu_get_cpu() in A7/A15


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH 00/33] hw/cpu/arm: Remove one use of qemu_get_cpu() in A7/A15 MPCore priv
Date: Tue, 2 Jan 2024 17:15:35 +0100
User-agent: Mozilla Thunderbird

Hi Cédric,

On 2/1/24 15:55, Cédric Le Goater wrote:
On 12/12/23 17:29, Philippe Mathieu-Daudé wrote:
Hi,

When a MPCore cluster is used, the Cortex-A cores belong the the
cluster container, not to the board/soc layer. This series move
the creation of vCPUs to the MPCore private container.

Doing so we consolidate the QOM model, moving common code in a
central place (abstract MPCore parent).

Changing the QOM hierarchy has an impact on the state of the machine
and some fixups are then required to maintain migration compatibility.
This can become a real headache for KVM machines like virt for which
migration compatibility is a feature, less for emulated ones.

All changes are either moving properties (which are not migrated)
or moving non-migrated QOM members (i.e. pointers of ARMCPU, which
is still migrated elsewhere). So I don't see any obvious migration
problem, but I might be missing something, so I Cc'ed Juan :>


I don't have a good solution to propose to overcome this problem :/

C.



This eventually allow removing one qemu_get_cpu() use, which we
want to remove in heterogeneous machines (machines using MPCore
are candidate for heterogeneous emulation).


  include/hw/arm/aspeed_soc.h    |   5 +-
  include/hw/arm/boot.h          |   4 +-
  include/hw/arm/exynos4210.h    |   6 +-
  include/hw/arm/fsl-imx6.h      |   6 +-
  include/hw/arm/fsl-imx6ul.h    |   8 +-
  include/hw/arm/fsl-imx7.h      |   8 +-
  include/hw/arm/npcm7xx.h       |   3 +-
  include/hw/cpu/a15mpcore.h     |  44 -------
  include/hw/cpu/a9mpcore.h      |  39 -------
  include/hw/cpu/cortex_mpcore.h | 135 ++++++++++++++++++++++



reply via email to

[Prev in Thread] Current Thread [Next in Thread]