On Tue, Jun 23, 2020 at 7:46 AM Paul Durrant <[email protected]> wrote: > > > -----Original Message----- > > From: Markus Armbruster <[email protected]> > > Sent: 23 June 2020 09:41 > > To: Jason Andryuk <[email protected]> > > Cc: Mark Cave-Ayland <[email protected]>; Anthony PERARD > > <[email protected]>; xen- > > devel <[email protected]>; Paul Durrant <[email protected]>; QEMU > > <[email protected]> > > Subject: Re: sysbus failed assert for xen_sysdev > > > > Jason Andryuk <[email protected]> writes: > > > Then it gets farther... until > > > qemu-system-i386: hw/core/qdev.c:439: qdev_assert_realized_properly: > > > Assertion `dev->realized' failed. > > > > > > dev->id is NULL. The failing device is: > > > (gdb) p *dev.parent_obj.class.type > > > $12 = {name = 0x555556207770 "cfi.pflash01", > > > > > Having commented out the call to xen_be_init() entirely (and xen_bus_init() > for good measure) I also get this assertion failure, so > I don't think is related.
Yes, this is something different. pc_pflash_create() calls qdev_new(TYPE_PFLASH_CFI01), but it is only realized in pc_system_flash_map()... and pc_system_flash_map() isn't called for Xen. Removing the call to pc_system_flash_create() from pc_machine_initfn() lets QEMU startup and run a Xen HVM again. xen_enabled() doesn't work there since accelerators have not been initialized yes, I guess? Regards, Jason
