From nobody Sun Apr 13 18:11:56 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1614964029; cv=none; d=zohomail.com; s=zohoarc; b=SDX46Nx4KiWdVOQu1dIe6odyax1M0B0oEPnkZwkftcyM7PQgGPQIROXmSENiGJTxzJQw+TIQA+1Vc06PNbN43KPqWU/A8ojBFX5EHdqP+298zLIi5oncPDdkfFAxM0dkRcCPtfnk4yWVzY5jOiOcuaQfomYMB3iK28G7DMHesx4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1614964029; 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=FBSGDxhR8kl8OetMS2DbHF1PkFiO0aTawaBn66KLBdY=; b=j9JQ/rHwQl2ydUqbf+NglYdtwU835HM2DOJrGps6Oox43h3xd0iXUkFCR7QE0RYvZENDHjhcwayaaLIkz9I71jcFJuDEL9Mmz8cVYjqJmtVb1Qh4zNQ4wfqaICK0q3PTFYrzKF+0xmSD6NMQmT46mbRuEoUZTQbBgAgFgghBH94= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass 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 1614964029281382.47844930914084; Fri, 5 Mar 2021 09:07:09 -0800 (PST) Received: from localhost ([::1]:41810 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lIDuu-0002q8-8T for importer@patchew.org; Fri, 05 Mar 2021 12:07:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:60956) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lIDkE-0006sl-Ro for qemu-devel@nongnu.org; Fri, 05 Mar 2021 11:56:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:35928) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1lIDk3-00079m-BR for qemu-devel@nongnu.org; Fri, 05 Mar 2021 11:56:06 -0500 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-448-w3eR7KHtO6CEaIZQUCna-g-1; Fri, 05 Mar 2021 11:55:44 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 257711005D58; Fri, 5 Mar 2021 16:55:35 +0000 (UTC) Received: from merkur.redhat.com (ovpn-112-36.phx2.redhat.com [10.3.112.36]) by smtp.corp.redhat.com (Postfix) with ESMTP id 1780260C43; Fri, 5 Mar 2021 16:55:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1614963349; 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=FBSGDxhR8kl8OetMS2DbHF1PkFiO0aTawaBn66KLBdY=; b=fDP3YYVDkf9nnYMyJxdB7wql7Nu6vjpKvv6EAkLScQF2PztANcPtfzxer8ykiL4uFYRvM2 eItBFoEKd+JbTaoSLb/cX+TX8I+JiR51cyealm+4EFFoRDlaT+4mB9ORQXAhGveZzBYj4t sSTdt4LWlUBGS6WqRz78atzf9VkYRt4= X-MC-Unique: w3eR7KHtO6CEaIZQUCna-g-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 20/31] block/export: fix vhost-user-blk export sector number calculation Date: Fri, 5 Mar 2021 17:54:43 +0100 Message-Id: <20210305165454.356840-21-kwolf@redhat.com> In-Reply-To: <20210305165454.356840-1-kwolf@redhat.com> References: <20210305165454.356840-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kwolf@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com 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=63.128.21.124; envelope-from=kwolf@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, 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: kwolf@redhat.com, peter.maydell@linaro.org, qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" From: Stefan Hajnoczi The driver is supposed to honor the blk_size field but the protocol still uses 512-byte sector numbers. It is incorrect to multiply req->sector_num by blk_size. VIRTIO 1.1 5.2.5 Device Initialization says: blk_size can be read to determine the optimal sector size for the driver to use. This does not affect the units used in the protocol (always 512 bytes), but awareness of the correct value can affect performance. Fixes: 3578389bcf76c824a5d82e6586a6f0c71e56f2aa ("block/export: vhost-user = block device backend server") Signed-off-by: Stefan Hajnoczi Message-Id: <20210223144653.811468-10-stefanha@redhat.com> Signed-off-by: Kevin Wolf --- block/export/vhost-user-blk-server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/block/export/vhost-user-blk-server.c b/block/export/vhost-user= -blk-server.c index 2614a63791..f74796241c 100644 --- a/block/export/vhost-user-blk-server.c +++ b/block/export/vhost-user-blk-server.c @@ -144,7 +144,7 @@ static void coroutine_fn vu_blk_virtio_process_req(void= *opaque) break; } =20 - int64_t offset =3D req->sector_num * vexp->blk_size; + int64_t offset =3D req->sector_num << VIRTIO_BLK_SECTOR_BITS; QEMUIOVector qiov; if (is_write) { qemu_iovec_init_external(&qiov, out_iov, out_num); --=20 2.29.2