Am 09.03.2016 um 13:20 hat Paolo Bonzini geschrieben: > On 22/02/2016 15:39, Paolo Bonzini wrote: > > In short, this patch gets rid of blockdev_mark_auto_del and > > blockdev_auto_del. > > > > With these patches, it is possible to create a new -drive with the same > > id as soon as the DEVICE_DELETED event is delivered (which equals to > > unrealize). > > > > I'm sorry I'm not able to explain the history (and probably do not > > understand the full ramifications) of this. That's why this is just > > an RFC. > > > > The idea here is that reference counting the BlockBackend is enough to > > defer the deletion of the block device as much as necessary; anticipating > > the destruction of the DriveInfo is not a problem, and has the desired > > effect of freeing the QemuOpts. > > > > Patches 1 and 3 are mostly similar to the version I had earlier sent as > > RFC, but they now pass all unit tests. Patch 2 is new, but I don't know > > of a test that fails it. > > > > Paolo > > > > Paolo Bonzini (3): > > block: detach devices from DriveInfo at unrealize time > > block: keep BlockBackend alive until device finalize time > > block: remove legacy_dinfo at blk_detach_dev time > > > > block/block-backend.c | 13 +++++++++---- > > blockdev.c | 28 +++++++++------------------- > > hw/block/virtio-blk.c | 4 +++- > > hw/block/xen_disk.c | 1 + > > hw/core/qdev-properties-system.c | 13 +++++++++++-- > > hw/ide/piix.c | 3 +++ > > hw/scsi/scsi-bus.c | 4 +++- > > hw/usb/dev-storage.c | 3 ++- > > include/sysemu/blockdev.h | 5 ++--- > > 9 files changed, 43 insertions(+), 31 deletions(-) > > > > Ping?!?
Markus, can you please review this? You seem to have a better understanding of DriveInfo and related magic. Kevin