From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34100) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1addG3-0005y5-1z for qemu-devel@nongnu.org; Wed, 09 Mar 2016 07:30:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1addFy-0003YF-1I for qemu-devel@nongnu.org; Wed, 09 Mar 2016 07:30:30 -0500 Date: Wed, 9 Mar 2016 13:30:12 +0100 From: Kevin Wolf Message-ID: <20160309123012.GG5205@noname.redhat.com> References: <1456151945-11225-1-git-send-email-pbonzini@redhat.com> <56E01503.6050300@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56E01503.6050300@redhat.com> Subject: Re: [Qemu-devel] [PATCH 0/3] Early release of -drive QemuOpts List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Max Reitz , qemu-devel@nongnu.org, qemu block , Markus Armbruster 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