On 19 July 2018 at 14:02, Thomas Huth <[email protected]> wrote: > The instance_init function of the xtensa CPUs creates a memory region, > but does not set an owner, so the memory region is not destroyed > correctly when the CPU object is removed. This can happen when > introspecting the CPU devices, so introspecting the CPU device will > leave a dangling memory region object in the QOM tree. Make sure to > set the right owner here to fix this issue. > > Signed-off-by: Thomas Huth <[email protected]> > --- > target/xtensa/cpu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/xtensa/cpu.c b/target/xtensa/cpu.c > index b50c840..590813d 100644 > --- a/target/xtensa/cpu.c > +++ b/target/xtensa/cpu.c > @@ -149,7 +149,7 @@ static void xtensa_cpu_initfn(Object *obj) > #ifndef CONFIG_USER_ONLY > env->address_space_er = g_malloc(sizeof(*env->address_space_er)); > env->system_er = g_malloc(sizeof(*env->system_er)); > - memory_region_init_io(env->system_er, NULL, NULL, env, "er", > + memory_region_init_io(env->system_er, obj, NULL, env, "er", > UINT64_C(0x100000000)); > address_space_init(env->address_space_er, env->system_er, "ER"); > #endif > --
Applied to master for rc4, thanks. -- PMM
