On 12/19/25 11:08 AM, Alex Bennée wrote:
We need to move the plugin vcpu_init callback to the reset phase so
all register information is available to plugins. However so as not to
complicate the initialisation code we still want the call once to do
our housekeeping.

Signed-off-by: Alex Bennée <[email protected]>
---
  include/qemu/plugin.h      | 19 ++++++++++++++-----
  include/qemu/qemu-plugin.h |  4 +++-
  hw/core/cpu-common.c       | 21 +++++++++++++++------
  plugins/core.c             | 31 +++++++++++++++++++++++--------
  4 files changed, 55 insertions(+), 20 deletions(-)
From our conversation about GIC registers not being visible at cpu init time, it really seems like the root issue is that we have an external component that should not be able to dynamically define new cpu registers, and that cpu should deal with it directly when creating its own registers.

From what I understood, those registers are defined dynamically in:
void gicv3_init_cpuif(GICv3State *s)

Any chance this could be reversed in terms of dependency to be initialized *before* the cpus, so that GICv3State could be passed as a parameter for initialization on cpu side?

Regards,
Pierrick

Reply via email to