From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:56227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S242X-00089a-LC for qemu-devel@nongnu.org; Mon, 27 Feb 2012 12:07:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S242R-0008Mv-QG for qemu-devel@nongnu.org; Mon, 27 Feb 2012 12:07:09 -0500 Received: from mx1.redhat.com ([209.132.183.28]:1923) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S242R-0008Mr-Ik for qemu-devel@nongnu.org; Mon, 27 Feb 2012 12:07:03 -0500 Message-ID: <4F4BB832.5000305@redhat.com> Date: Mon, 27 Feb 2012 18:06:58 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <20120224170143.78f55d3e@doriath.home> <8eaeb022-ea20-4823-886a-e629bce1c776@zmail16.collab.prod.int.phx2.redhat.com> <20120227091215.7849e558@doriath.home> <4F4B7BCD.6000808@redhat.com> <20120227100645.3f36d52d@doriath.home> <4F4B95A5.3000804@redhat.com> <4F4B9761.3010601@codemonkey.ws> <4F4B9931.30708@redhat.com> <4F4B9A46.3090706@codemonkey.ws> <4F4B9E73.3060601@redhat.com> <4F4BA044.5040208@codemonkey.ws> <4F4BB4A3.6080407@redhat.com> <4F4BB639.6010200@codemonkey.ws> In-Reply-To: <4F4BB639.6010200@codemonkey.ws> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] drive transactions (was Re: [PATCH 2/2 v2] Add the blockdev-reopen and blockdev-migrate commands) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , Jeff Cody , mtosatti@redhat.com, qemu-devel@nongnu.org, armbru@redhat.com, Federico Simoncelli , Luiz Capitulino On 02/27/2012 05:58 PM, Anthony Liguori wrote: >> >> Jeff could rework his patches to work with transaction begin/commit >> commands, and Federico can then add drive-reopen and drive-migrate on >> top. > > Yes, maybe I lack imagination but I fail to see how it generalizes > easily/nicely. > From what I can tell, all of the rollback logic is very specific to the > commands being used, right? The rollback logic is just "close the new devices". The commit logic is specific to the commands being used, but reopen should be easier than snapshot (and basically the same except for backing_hd handling). Migrate is really syntactic sugar around reopen, so no surprises there. Paolo