From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43234) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y1yUH-000673-RG for qemu-devel@nongnu.org; Fri, 19 Dec 2014 09:25:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y1yUB-00036c-Gm for qemu-devel@nongnu.org; Fri, 19 Dec 2014 09:25:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:42527) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y1yUB-00036Q-7y for qemu-devel@nongnu.org; Fri, 19 Dec 2014 09:24:55 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id sBJEOsr7012259 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Fri, 19 Dec 2014 09:24:54 -0500 From: Markus Armbruster References: <87vbltvpl0.fsf@blackfin.pond.sub.org> <87mw6l9e04.fsf@blackfin.pond.sub.org> Date: Fri, 19 Dec 2014 15:24:52 +0100 In-Reply-To: <87mw6l9e04.fsf@blackfin.pond.sub.org> (Markus Armbruster's message of "Thu, 18 Dec 2014 16:25:15 +0100") Message-ID: <87d27f67kb.fsf@blackfin.pond.sub.org> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] Review of ways to create BDSes List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , Fam Zheng , Stefan Hajnoczi Markus Armbruster writes: > = Introduction = > > BDSes can be opened in various ways. Some of them don't provide for > user configuration. Some of them should. > > Example: -drive format=qcow2,file=foo.qcow2 where foo.qcow2 has a raw > backing file foo.raw. This creates the the following tree of BDSes: > > (qcow2,foo.qcow2) > / \ > (file,foo.qcow2) (raw,foo.raw) > | > (file,foo.raw) > > Before Kevin added driver-specific options, -drive let you configure > basically just the root. Configuration for the others was inferred from > the root's configuration and the images. Driver-specific options let > you configure all the nodes. Defaults are still inferred as before. > > Example: blockdev-snapshot-sync provides only a small subset of the full > configuration options for the BDS it creates. Could be fixed by > duplicating the full options, i.e. blockdev-add's. But a command that > just snapshots and leaves BDS creation to blockdev-add would be cleaner. > > This is a systematic review of all the ways you can open BDSes in qemu > proper, i.e. not in qemu-{img,io,nbd}. I tracked them down by following > the call chains leading to bdrv_open(). Forgot to mention: I ignored HMP commands, too. [...]