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