On Mon, Mar 08, 2021 at 06:37:38PM +0100, Paolo Bonzini wrote: > On 08/03/21 18:29, Anthony PERARD wrote: > > > If nothing else works then I guess it's okay, but why can't you do the > > > xen_block_drive_destroy from e.g. an unrealize callback? > > > > I'm not sure if that's possible. > > > > xen_block_device_create/xen_block_device_destroy() is supposed to be > > equivalent to do those qmp commands: > > blockdev-add node-name=xvdz-qcow2 driver=qcow2 > > file={"driver":"file","filename":"disk.qcow2","locking":"off"} > > device_add id=xvdz driver=xen-disk vdev=xvdz drive=xvdz-qcow2 > > > > But I tried to add a call xen_block_drive_destroy from > > xen_block_unrealize, but that still is called too early, it's called > > before object_property_del_all() which would delete "drive" and call > > release_drive() which would free the node. > > Can you use blockdev_mark_auto_del? Then you don't have to call > xen_block_drive_destroy at all.
There is no legacy_dinfo, so blockdev_mark_auto_del doesn't work. -- Anthony PERARD