On 28/09/2015 16:17, Markus Armbruster wrote: >> The reason why this particular call has a NULL owner is that the >> (non-qdevified) DBDMA_init object inside it is also passing a NULL >> owner. DBDMA_init object is also doing a few more non-idempotent things >> such as a malloc, a vmstate_register and a qemu_register_reset.
I missed a step here: "... thus macio really cannot_be_created_even_by_object_new_yet". > * hw/misc/omap_gpmc.c omap_gpmc_cs_map() > > Is this sane? I guess the object_unparent() in omap_gpmc_cs_unmap() > could make it sane. > > * hw/ppc/ppc4xx_devs.c sdram_set_bcr() > > Is this sane? I guess the object_unparent() there could make it sane. Yes and yes. There are many more similar places that you missed, which call memory_region_init_alias(), memory_region_init_io() and memory_region_init_ram(). Those are the same. Paolo