From nobody Thu Dec 18 13:37:36 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1621013614; cv=none; d=zohomail.com; s=zohoarc; b=DJpRx+h8NNFdRb2tmJ9+g159tEuoaOt6qKyfZPcHJKHxHNkTxSZS7sLZcXS9zMaPdDc7cdwzg3xZ4oluPwjOEzMaA6SP4XivOmKdKA9W6/uBh77eFSFCTD4uwkbL8RbeJtQZ/poBClHwLlbMvG9k2isau7cLNYO6RhIUX63oWLM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1621013614; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mRe7Bm5is0VVvHkRQYk8nmfyiqjiigIPxA99v6VMGaw=; b=FY3aN3WXkb+v+TMM/pwd4owxJ7tvpAhnRweu3jI6hzxYqbj+Z5CZGoaGKxFPqNJIPbArTfboQJX/h7LKK2FvuTyKRaHHZLDfwNHrMyXsEpbPpZXQ8Xhtigy35wFWi6I3xg/YZJOlmRb4wevR4uAKi3zebrhxInNkjooUkSK/QTc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1621013614348769.4838327392476; Fri, 14 May 2021 10:33:34 -0700 (PDT) Received: from localhost ([::1]:52546 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lhbgr-0005gV-6K for importer@patchew.org; Fri, 14 May 2021 13:33:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57846) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lhawe-0005gg-V9 for qemu-devel@nongnu.org; Fri, 14 May 2021 12:45:48 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:56080) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lhawZ-0005vQ-2b for qemu-devel@nongnu.org; Fri, 14 May 2021 12:45:48 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-269-z2RqbhGpO-Oq843qPrabUA-1; Fri, 14 May 2021 12:45:38 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 65A85107ACE3; Fri, 14 May 2021 16:45:37 +0000 (UTC) Received: from localhost (ovpn-114-49.ams2.redhat.com [10.36.114.49]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 112A95C1C4; Fri, 14 May 2021 16:45:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1621010742; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mRe7Bm5is0VVvHkRQYk8nmfyiqjiigIPxA99v6VMGaw=; b=VKwrr3ECdYzkwanIEAqzMi7fzmtWdVf12E7/V55YSYW2PfNG3zwcBNIW/9RzPCMRIJi3Sl a5tNNrXXWDpFm4n6+CRL+Tm7krmzyZXJXXh1sA7BGUGIuDzY5tPME9qtygWaxr0c5ti3vq UPxaPW3BVbHuLQ0uvNMwavzs0y6Cw6w= X-MC-Unique: z2RqbhGpO-Oq843qPrabUA-1 From: Max Reitz To: qemu-block@nongnu.org Subject: [PULL 10/19] Document qemu-img options data_file and data_file_raw Date: Fri, 14 May 2021 18:45:05 +0200 Message-Id: <20210514164514.1057680-11-mreitz@redhat.com> In-Reply-To: <20210514164514.1057680-1-mreitz@redhat.com> References: <20210514164514.1057680-1-mreitz@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mreitz@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=mreitz@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.699, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Peter Maydell , qemu-devel@nongnu.org, Max Reitz Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) From: Connor Kuehl The contents of this patch were initially developed and posted by Han Han[1], however, it appears the original patch was not applied. Since then, the relevant documentation has been moved and adapted to a new format. I've taken most of the original wording and tweaked it according to some of the feedback from the original patch submission. I've also adapted it to restructured text, which is the format the documentation currently uses. [1] https://lists.nongnu.org/archive/html/qemu-block/2019-10/msg01253.html Fixes: https://bugzilla.redhat.com/1763105 Signed-off-by: Han Han Suggested-by: Max Reitz [ Max: provided description of data_file_raw behavior ] Signed-off-by: Connor Kuehl Message-Id: <20210505195512.391128-1-ckuehl@redhat.com> Signed-off-by: Max Reitz --- docs/tools/qemu-img.rst | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/docs/tools/qemu-img.rst b/docs/tools/qemu-img.rst index c9efcfaefc..cfe1147879 100644 --- a/docs/tools/qemu-img.rst +++ b/docs/tools/qemu-img.rst @@ -866,6 +866,37 @@ Supported image file formats: issue ``lsattr filename`` to check if the NOCOW flag is set or not (Capital 'C' is NOCOW flag). =20 + ``data_file`` + Filename where all guest data will be stored. If this option is used, + the qcow2 file will only contain the image's metadata. + + Note: Data loss will occur if the given filename already exists when + using this option with ``qemu-img create`` since ``qemu-img`` will cre= ate + the data file anew, overwriting the file's original contents. To simply + update the reference to point to the given pre-existing file, use + ``qemu-img amend``. + + ``data_file_raw`` + If this option is set to ``on``, QEMU will always keep the external da= ta + file consistent as a standalone read-only raw image. + + It does this by forwarding all write accesses to the qcow2 file throug= h to + the raw data file, including their offsets. Therefore, data that is vi= sible + on the qcow2 node (i.e., to the guest) at some offset is visible at th= e same + offset in the raw data file. This results in a read-only raw image. Wr= ites + that bypass the qcow2 metadata may corrupt the qcow2 metadata because = the + out-of-band writes may result in the metadata falling out of sync with= the + raw image. + + If this option is ``off``, QEMU will use the data file to store data i= n an + arbitrary manner. The file=E2=80=99s content will not make sense witho= ut the + accompanying qcow2 metadata. Where data is written will have no relati= on to + its offset as seen by the guest, and some writes (specifically zero wr= ites) + may not be forwarded to the data file at all, but will only be handled= by + modifying qcow2 metadata. + + This option can only be enabled if ``data_file`` is set. + ``Other`` =20 QEMU also supports various other image file formats for --=20 2.31.1