From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B8988C2D0E4 for ; Fri, 27 Nov 2020 10:15:25 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DC84B206C0 for ; Fri, 27 Nov 2020 10:15:24 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="AYvnUZPa" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DC84B206C0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:49082 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kiamh-000850-Cz for qemu-devel@archiver.kernel.org; Fri, 27 Nov 2020 05:15:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53294) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kiald-0007UP-W6 for qemu-devel@nongnu.org; Fri, 27 Nov 2020 05:14:18 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:60765) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kialb-0005R1-8B for qemu-devel@nongnu.org; Fri, 27 Nov 2020 05:14:17 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1606472054; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=/ECF9uH1M9dAxQlGu6VGIpUGqxZZNgdBGkYVbVdzHaI=; b=AYvnUZPaaYs5A7o9Epu4XM6t3UQIWhT3nFFjjP1xszfU2CAr1Kn2tR8u4aZ0T4O/936SjF 6tsWFVfoyz3pg6PzRn9anE8aACMsz4R8YBh7NrpjvQzNQ93R+b9VHJ83zTD3C8SH6rAfOf iFdXfA7wDIp0dsLyzJ3FGYz5s49aqYo= 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-386-M0A0IdikPhiz2lmeUd2YbA-1; Fri, 27 Nov 2020 05:14:11 -0500 X-MC-Unique: M0A0IdikPhiz2lmeUd2YbA-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 75C0980EF81; Fri, 27 Nov 2020 10:14:10 +0000 (UTC) Received: from redhat.com (ovpn-113-125.ams2.redhat.com [10.36.113.125]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BB4BA5D9CC; Fri, 27 Nov 2020 10:14:08 +0000 (UTC) Date: Fri, 27 Nov 2020 10:14:05 +0000 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: Markus Armbruster Subject: Re: ImageInfo oddities regarding compression Message-ID: <20201127101405.GA1596141@redhat.com> References: <87r1ofru4z.fsf@dusky.pond.sub.org> MIME-Version: 1.0 In-Reply-To: <87r1ofru4z.fsf@dusky.pond.sub.org> User-Agent: Mutt/1.14.6 (2020-07-11) X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=berrange@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Received-SPF: pass client-ip=63.128.21.124; envelope-from=berrange@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, 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: , Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Cc: Kevin Wolf , Denis Plotnikov , qemu-devel@nongnu.org, qemu-block@nongnu.org, Max Reitz Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On Fri, Nov 27, 2020 at 11:06:36AM +0100, Markus Armbruster wrote: > ImageInfo has an optional member @compressed: > > ## > # @ImageInfo: > [...] > # @compressed: true if the image is compressed (Since 1.7) > > Doc bug: neglects to specify the default. I guess it's false. > > The only user appears to be vmdk_get_extent_info(). Goes back to > v1.7.0's commits > > f4c129a38a vmdk: Implment bdrv_get_specific_info > cbe82d7fb3 qapi: Add optional field 'compressed' to ImageInfo > > ImageInfo also has an optional member @format-specific. > > Doc bug: neglects to specify when it's present. I assume it's always > present when member @format has a value that has a non-empty variant in > @format-specific's type ImageInfoSpecific. > > Format qcow2's variant is ImageInfoSpecificQCow2. It has a mandatory > member @compression-type. > > ## > # @Qcow2CompressionType: > # > # Compression type used in qcow2 image file > # > # @zlib: zlib compression, see > # @zstd: zstd compression, see > # > # Since: 5.1 > ## > { 'enum': 'Qcow2CompressionType', > 'data': [ 'zlib', { 'name': 'zstd', 'if': 'defined(CONFIG_ZSTD)' } ] } > > Apparently, you can't have a qcow2 image without compression. Correct? > > Can you imagine a use case for "without compression"? Yes & no. An image always has a compression type, either implicitly zlib as the historical default, or explicitly as a type recorded in the header. This doesn't mean compression is used. There may be zero or more clusters actually using compression. Typically compression will never be used, but there's still an associated compression type regardless. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|