From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LndjC-0007GP-CV for qemu-devel@nongnu.org; Sat, 28 Mar 2009 14:57:58 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Lndj7-0007Cm-LQ for qemu-devel@nongnu.org; Sat, 28 Mar 2009 14:57:57 -0400 Received: from [199.232.76.173] (port=44239 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Lndj7-0007CQ-4Z for qemu-devel@nongnu.org; Sat, 28 Mar 2009 14:57:53 -0400 Received: from mx2.redhat.com ([66.187.237.31]:59340) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Lndj5-0001NR-OI for qemu-devel@nongnu.org; Sat, 28 Mar 2009 14:57:52 -0400 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n2SIvnN3026781 for ; Sat, 28 Mar 2009 14:57:50 -0400 Message-ID: <49CE7352.1050800@redhat.com> Date: Sat, 28 Mar 2009 21:58:26 +0300 From: Avi Kivity MIME-Version: 1.0 Subject: Re: [Qemu-devel] [6907] Introducing qcow2 extensions (Uri Lublin) References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: uri Lublin Anthony Liguori wrote: > Revision: 6907 > http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6907 > Author: aliguori > Date: 2009-03-28 17:55:06 +0000 (Sat, 28 Mar 2009) > Log Message: > ----------- > Introducing qcow2 extensions (Uri Lublin) > > Qcow2 extensions are build of magic (id) len (in bytes) and data. > They reside right after the qcow2 header. > If a backing filename exists it follows the qcow2 extension (if exist) > > Qcow2 extensions are read upon image open. > Qcow2 extensions are identified by their magic. > Unknown qcow2 extensions (unknown magic) are skipped. > A Special magic of 0 means end-of-qcow2-extensions. > > We should introduce a notion of compatible vs. incompatible extensions. A compatible extension my be ignored by the qcow2 code if it does not understand the magic number. An incompatible extension causes an abort. This allows both more flexibility in how we can change the file format. I believe ext* does the same thing. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain.