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=-5.1 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 C8AAEC433E0 for ; Fri, 19 Feb 2021 17:08:40 +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 06E1E64E60 for ; Fri, 19 Feb 2021 17:08:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 06E1E64E60 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]:48822 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lD9Gg-0003jw-St for qemu-devel@archiver.kernel.org; Fri, 19 Feb 2021 12:08:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:38314) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lD97O-0005NN-1j for qemu-devel@nongnu.org; Fri, 19 Feb 2021 11:59:03 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:48278) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1lD97J-0001Gp-Fz for qemu-devel@nongnu.org; Fri, 19 Feb 2021 11:59:01 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1613753935; 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=IBdAJ06QV55BOCS6k/x7gILxGYF2lOmZJx3mQOJhVjA=; b=evhoomqK2DQfloyUQrn8Pzv3dm7q45SH8LwRJf28qrjGJfRqWjIU815k1WdChiDnBKmUqJ FK0ZL0u7XvRFmmlfBT0or2V1CklibGdniTNoqVWqY4ZCDpYCn/pDGg67JnwEBMwFHOX5LU rXJRiQjTyZmfT8vvDaceTyZzffLv+V4= 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-125-b4RE5nCMNSOAXVufvGyL3g-1; Fri, 19 Feb 2021 11:58:53 -0500 X-MC-Unique: b4RE5nCMNSOAXVufvGyL3g-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 B8F7F1E561; Fri, 19 Feb 2021 16:58:51 +0000 (UTC) Received: from [10.3.113.156] (ovpn-113-156.phx2.redhat.com [10.3.113.156]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 04BDB5D9C6; Fri, 19 Feb 2021 16:58:50 +0000 (UTC) From: Eric Blake To: Nir Soffer , qemu-devel@nongnu.org References: <20210219160752.1826830-1-nsoffer@redhat.com> Organization: Red Hat, Inc. Subject: Re: [PATCH] nbd: server: Report holes for raw images Message-ID: <81464e3d-c0ee-ac12-c43b-d0f7180db482@redhat.com> Date: Fri, 19 Feb 2021 10:58:50 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 In-Reply-To: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eblake@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=216.205.24.124; envelope-from=eblake@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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 , Nir Soffer , Vladimir Sementsov-Ogievskiy , qemu-block@nongnu.org, Max Reitz Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On 2/19/21 10:42 AM, Eric Blake wrote: >> To me, data=false looks compatible with NBD_STATE_HOLE. From user point >> of view, getting same results from qemu-nbd and qemu-img is more >> important than being more correct about allocation status. > > More to the point, here is our inconsistency: > > In nbd/server.c, we turn !BDRV_BLOCK_ALLOCATED into NBD_STATE_HOLE > > In block/nbd.c, we turn !NBD_STATE_HOLE into BDRV_BLOCK_DATA > > The fact that we are not doing a round-trip conversion means that one of > the two places is wrong. And your argument that the server side is > wrong makes sense to me. In fact, when I went back and researched when this was introduced (see commit e7b1948d51 in 2018), we may have been aware of the inconsistency between client and server, but didn't make up our minds at the time: https://lists.gnu.org/archive/html/qemu-devel/2018-03/msg03465.html "? Hm, don't remember, what we decided about DATA/HOLE flags mapping.." > > I'll wait a few days for any other reviewer commentary before taking > this through my NBD tree. > -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3226 Virtualization: qemu.org | libvirt.org