From nobody Sun Feb 8 17:51:11 2026 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=1593768828; cv=none; d=zohomail.com; s=zohoarc; b=HGdcpLhtWdM+jtGEJYaJC2oMuL+/0ZR66Ezbn0H0EtkJyYRB3mSbSKtuTd+iDWI3luewvBIeCkTrn0dy7nL+Gd3joX+twCzfekzatMtX6Y+HsouXYkOhKi/pmozv2j/22y0/q8RlCtp7h+h4xIpVwRUu8u2R/9PtXyOHFwc59HE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768828; 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=+S9tTJk1IxSdz5YwHi6iSjVuasfOW43kaU5vR3AlBUY=; b=RCrn688N0+tD27tK5QpTp2+9l/RxFVOQYtXVDfAEzkKLlSpmv/GHw2X+WJl2EpEsHv0HxqDUyEtzGZJ6dSoerB2qQPOmlaPbCCrQCJwlxeMnHHaEkWSxDWHMb0GE9TtoXY2IHgPE30QHnwNRu4EPkQnmFOKgEp2lCaj246pxjT0= 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 1593768828343685.9778409499522; Fri, 3 Jul 2020 02:33:48 -0700 (PDT) Received: from localhost ([::1]:44102 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrI4p-0002z8-3b for importer@patchew.org; Fri, 03 Jul 2020 05:33:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35884) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtO-0002jk-Fn for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:21:58 -0400 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:41432 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtM-0000x2-FS for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:21:58 -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-446-AYOqNz39Mq61g2xmKglc2A-1; Fri, 03 Jul 2020 05:21:53 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A7BB8A0BD7; Fri, 3 Jul 2020 09:21:52 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id B5B5C7AC63; Fri, 3 Jul 2020 09:21:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768115; 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=+S9tTJk1IxSdz5YwHi6iSjVuasfOW43kaU5vR3AlBUY=; b=ODR8mKDcDIXWAqt0havc8SW3xF6jUXBDODj9mvPndDziy48yGg8u4txb3LF+I2rZvORJ4O lt/gh9PWZo3teaFKM45bR3/2lbMlopJxm7F9sedEwAsJul27BYq9Yjx8tUXOG1RMm/EbVZ dFzBjv/Ef939C4aq/fOd3yMxiR8zgGM= X-MC-Unique: AYOqNz39Mq61g2xmKglc2A-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 1/7] qemu-img convert: Don't pre-zero images Date: Fri, 3 Jul 2020 11:21:37 +0200 Message-Id: <20200703092143.165594-2-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=205.139.110.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 03:38:32 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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" Since commit 5a37b60a61c, qemu-img create will pre-zero the target image if it isn't already zero-initialised (most importantly, for host block devices, but also iscsi etc.), so that writing explicit zeros wouldn't be necessary later. This could speed up the operation significantly, in particular when the source image file was only sparsely populated. However, it also means that some block are written twice: Once when pre-zeroing them, and then when they are overwritten with actual data. On a full image, the pre-zeroing is wasted work because everything will be overwritten. In practice, write_zeroes typically turns out faster than writing explicit zero buffers, but slow enough that first zeroing everything and then overwriting parts can be a significant net loss. Meanwhile, qemu-img convert was rewritten in 690c7301600 and zero blocks are now written to the target using bdrv_co_pwrite_zeroes() if the target could be pre-zeroed. This way we already make use of the faster write_zeroes operation, but avoid writing any blocks twice. Remove the pre-zeroing because these days this former optimisation has actually turned into a pessimisation in the common case. Reported-by: Nir Soffer Signed-off-by: Kevin Wolf Message-Id: <20200622151203.35624-1-kwolf@redhat.com> Tested-by: Nir Soffer Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf --- qemu-img.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/qemu-img.c b/qemu-img.c index d7e846e607..bdb9f6aa46 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -2084,15 +2084,6 @@ static int convert_do_copy(ImgConvertState *s) s->has_zero_init =3D bdrv_has_zero_init(blk_bs(s->target)); } =20 - if (!s->has_zero_init && !s->target_has_backing && - bdrv_can_write_zeroes_with_unmap(blk_bs(s->target))) - { - ret =3D blk_make_zero(s->target, BDRV_REQ_MAY_UNMAP | BDRV_REQ_NO_= FALLBACK); - if (ret =3D=3D 0) { - s->has_zero_init =3D true; - } - } - /* Allocate buffer for copied data. For compressed images, only one cl= uster * can be copied at a time. */ if (s->compressed) { --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768602; cv=none; d=zohomail.com; s=zohoarc; b=lqWKPzgcUh5WQibyn9mFb+GUld0J6UKZDruA1zfkktRo4nSuhlY9XZOq138tjf+ZhP8LeCToHfLSw6KBsOoXPvakrLs7AX6xieZPjdtv6bZyS1a04gXYx4yvIaK5AK18YF5XwrwWaNn/CctrkhCUudSuZRHLS7WD4kvke7hSUqM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768602; 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=mgDhseqCFHPUzondXeQso6AXVU4ku95v/WJUYakn3eY=; b=hq/FSiD4mjHyv0wRk+DJY+PYRetHi+1fHwnM99p7Em7BpUMw51jASqoAew+deQ8nUw4cMmxviQ5nG6urkdNLew7jMPKApyXCOGHJBRuXX9dGa1wJzeco0rvxtKRHJptG84SEmMW2RDAQ/khPe5tskAFuEtItY837abVEMofPBUw= 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 1593768602065474.57937671462673; Fri, 3 Jul 2020 02:30:02 -0700 (PDT) Received: from localhost ([::1]:55534 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrI1A-0003aL-8r for importer@patchew.org; Fri, 03 Jul 2020 05:30:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35912) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtP-0002mE-HF for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:21:59 -0400 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:22901 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtN-0000xP-Vp for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:21:59 -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-324-ddL8IaueMzKFyjIPeRg8eg-1; Fri, 03 Jul 2020 05:21:54 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E0E0E800C60; Fri, 3 Jul 2020 09:21:53 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id EE93F7AC63; Fri, 3 Jul 2020 09:21:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768117; 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=mgDhseqCFHPUzondXeQso6AXVU4ku95v/WJUYakn3eY=; b=Vo+CnunP/6OSa5VYk2wM8Q528/o8n54vIrTfk3zcOJHodArfRORypi+0IpIUzrTzIEiP0N lnPz5LFMTeesl2FUtfgqORSOCsNo5qsb0h1mPseO9Y3un5CCWPyrDqtWD0BaGakBBfbhVa cB3ZpNXQbXxCfZKuFcAj1M8RsuvArL4= X-MC-Unique: ddL8IaueMzKFyjIPeRg8eg-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 2/7] qemu-storage-daemon: remember to add qemu_object_opts Date: Fri, 3 Jul 2020 11:21:38 +0200 Message-Id: <20200703092143.165594-3-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=205.139.110.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 03:38:32 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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 --object option is supported by qemu-storage-daemon but the qemu_object_opts QemuOptsList wasn't being added. As a result calls to qemu_find_opts("object") failed with "There is no option group 'object'". This patch fixes the object-del QMP command. Signed-off-by: Stefan Hajnoczi Message-Id: <20200619101132.2401756-2-stefanha@redhat.com> Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf --- qemu-storage-daemon.c | 1 + 1 file changed, 1 insertion(+) diff --git a/qemu-storage-daemon.c b/qemu-storage-daemon.c index 9e7adfe3a6..a01cbd6371 100644 --- a/qemu-storage-daemon.c +++ b/qemu-storage-daemon.c @@ -316,6 +316,7 @@ int main(int argc, char *argv[]) =20 module_call_init(MODULE_INIT_QOM); module_call_init(MODULE_INIT_TRACE); + qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_trace_opts); qcrypto_init(&error_fatal); bdrv_init(); --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768923; cv=none; d=zohomail.com; s=zohoarc; b=P5NJVeJQvtuOp0F1ShOgHjpSRZO5AqIW0nly0emiOdmgbxugrH/WAEvJzeIUxlRnAdYF13vnVnDV89MOXDse2bo24dFOS2VF4mOwKHUoW8P+Xs0e+NU3rqJ4/dKEstE5X/VW1GbS69NEXANIISdto+ZAckQtdZjw9u77pmQxGns= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768923; 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=AtvVYwlc1+ydxWQZdKR7ou+wPvfLfU9yuoxoUybNOEo=; b=Sh/yqE7FzS9j5XtGrOfuChZMIuCrOJI8285TnDCECUgka/m7uc2PvUedBx4JjB2RwHej9iXOkQexW6RlWIpE5l0o/lc+PD+EiNvYQNTSwsoUucQSiAszjJRIbnZRymnZfO4mBnoFMAM6PSuWSsnq+JcWFVXUUVUhtLzPUmtZi8w= 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 1593768923783449.9354581887533; Fri, 3 Jul 2020 02:35:23 -0700 (PDT) Received: from localhost ([::1]:52576 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrI6M-0006V5-Gw for importer@patchew.org; Fri, 03 Jul 2020 05:35:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35968) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtV-0002p3-Cl for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:05 -0400 Received: from us-smtp-delivery-1.mimecast.com ([207.211.31.120]:51815 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtT-0000yD-WC for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:05 -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-389-gGWpX8jtOZWUQrEghJhGmQ-1; Fri, 03 Jul 2020 05:21:56 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 29540107ACF3; Fri, 3 Jul 2020 09:21:55 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id 350AD7AC63; Fri, 3 Jul 2020 09:21:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768120; 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=AtvVYwlc1+ydxWQZdKR7ou+wPvfLfU9yuoxoUybNOEo=; b=dT6oHVtRx9wWNZleCPqjSGawhuUTrbSJpHmlRBr9VMOTMhmlnxUESZlTgwMkGdhcjZPs7O NUic3wh8s0nOjJ52zmSQFfw6cp7BVj8/L1UTqcyLnj2A8uY3Esp+9R5vTzgYhEq6GqiEhX dxUnfqewLI5OmnwdUUtdXhyqNBd8AjI= X-MC-Unique: gGWpX8jtOZWUQrEghJhGmQ-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 3/7] qemu-storage-daemon: add missing cleanup calls Date: Fri, 3 Jul 2020 11:21:39 +0200 Message-Id: <20200703092143.165594-4-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=207.211.31.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 02:53:25 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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 Several components used by qemu-storage-daemon have cleanup functions that aren't called. Keep the "valgrind --leak-check=3Dfull" as clean as possible by invoking the necessary cleanup functions. Signed-off-by: Stefan Hajnoczi Message-Id: <20200619101132.2401756-3-stefanha@redhat.com> Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf --- qemu-storage-daemon.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/qemu-storage-daemon.c b/qemu-storage-daemon.c index a01cbd6371..7e9b0e0d3f 100644 --- a/qemu-storage-daemon.c +++ b/qemu-storage-daemon.c @@ -335,5 +335,9 @@ int main(int argc, char *argv[]) main_loop_wait(false); } =20 + monitor_cleanup(); + qemu_chr_cleanup(); + user_creatable_cleanup(); + return EXIT_SUCCESS; } --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768378; cv=none; d=zohomail.com; s=zohoarc; b=KI+//Cphmn5RAQEhsW9zGduwKMjVba4CVVLux2g+kjKv8+cOujpXdj4IDHcLYPnQf6kZO5UrzmjR4/PZ/onKnecOwu7AH/POefbymi6KMkuctBqQvAdBfP0DDygZRpmXWjvC0Vl4OgKMMo56oy593HWAzktR+bzQ8F0xzGwwE9I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768378; 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=EXHYq9VZV/tJ7a6JAX6lA4GzjQ3hJSx7GfnbUr6wp1I=; b=F/JJq5ksAaUXXZ75wjxMoNTmaiXJsj5hNhUaaxVOnivB9JS6pZgvaJNtZl+GnqUvcYBrGe0Flb0H9+HI+Zc/SSYZdMVSGdVQjndBOXgno8H3tvP+nr0bWNsTR0TDVwEYK6bOda+NubamBimFjzdgc4JX/YCkNZg5mP19z3LMfuk= 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 1593768378758307.21058204231883; Fri, 3 Jul 2020 02:26:18 -0700 (PDT) Received: from localhost ([::1]:34458 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrHxZ-0002dZ-Gr for importer@patchew.org; Fri, 03 Jul 2020 05:26:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36074) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtZ-0002sX-Ua for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:09 -0400 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:21826 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtU-0000yP-5V for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:09 -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-38-IlAGgAVWOnK8Hd-FZ5w2NA-1; Fri, 03 Jul 2020 05:21:57 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 65CF6107ACCD; Fri, 3 Jul 2020 09:21:56 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id 732967AC71; Fri, 3 Jul 2020 09:21:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768121; 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=EXHYq9VZV/tJ7a6JAX6lA4GzjQ3hJSx7GfnbUr6wp1I=; b=DUEYBj63Di2wvA9cESGBI5owq2JL+R06+C9wSoCfjmfeDcgI50/saUL0QBJiTb9hEHUsop h9RT4vfyb2hZh4CL91QzTI5efnmFc+DFWJ7jLKMmuqx0mn9lguKiI7u+4mPhzbPsO2/GWo 7FKChyWYQwSlxIMWqV9gBbholuQnW/A= X-MC-Unique: IlAGgAVWOnK8Hd-FZ5w2NA-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 4/7] vvfat: Check that updated filenames are valid Date: Fri, 3 Jul 2020 11:21:40 +0200 Message-Id: <20200703092143.165594-5-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=205.139.110.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 03:38:32 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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" FAT allows only a restricted set of characters in file names, and for some of the illegal characters, it's actually important that we catch them: If filenames can contain '/', the guest can construct filenames containing "../" and escape from the assigned vvfat directory. The same problem could arise if ".." was ever accepted as a literal filename. Fix this by adding a check that all filenames are valid in check_directory_consistency(). Reported-by: Nathan Huckleberry Signed-off-by: Kevin Wolf Message-Id: <20200623175534.38286-2-kwolf@redhat.com> Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf --- block/vvfat.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/block/vvfat.c b/block/vvfat.c index c65a98e3ee..62230542e5 100644 --- a/block/vvfat.c +++ b/block/vvfat.c @@ -520,12 +520,31 @@ static void set_begin_of_direntry(direntry_t* direntr= y, uint32_t begin) direntry->begin_hi =3D cpu_to_le16((begin >> 16) & 0xffff); } =20 +static bool valid_filename(const unsigned char *name) +{ + unsigned char c; + if (!strcmp((const char*)name, ".") || !strcmp((const char*)name, ".."= )) { + return false; + } + for (; (c =3D *name); name++) { + if (!((c >=3D '0' && c <=3D '9') || + (c >=3D 'A' && c <=3D 'Z') || + (c >=3D 'a' && c <=3D 'z') || + c > 127 || + strchr("$%'-_@~`!(){}^#&.+,;=3D[]", c) !=3D NULL)) + { + return false; + } + } + return true; +} + static uint8_t to_valid_short_char(gunichar c) { c =3D g_unichar_toupper(c); if ((c >=3D '0' && c <=3D '9') || (c >=3D 'A' && c <=3D 'Z') || - strchr("$%'-_@~`!(){}^#&", c) !=3D 0) { + strchr("$%'-_@~`!(){}^#&", c) !=3D NULL) { return c; } else { return 0; @@ -2098,6 +2117,10 @@ DLOG(fprintf(stderr, "check direntry %d:\n", i); pri= nt_direntry(direntries + i)) } lfn.checksum =3D 0x100; /* cannot use long name twice */ =20 + if (!valid_filename(lfn.name)) { + fprintf(stderr, "Invalid file name\n"); + goto fail; + } if (path_len + 1 + lfn.len >=3D PATH_MAX) { fprintf(stderr, "Name too long: %s/%s\n", path, lfn.name); goto fail; --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768280; cv=none; d=zohomail.com; s=zohoarc; b=lJZQMzb9KEUhaIDcfVCgklLqCkfpTVEG+btwWqpE3xZIuV1U4WXhhTci7bfcOR8KT+VyGFLjY/bnPiCGU9KkhdanZMdJlHDHWIDSiwmXrpicWn+jNHBSageDRrvntXIGye5pP8CGBhvBIeXDBShxV7gpybOFtToWWe1Pjw9R+BA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768280; 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=TVF5KUpHWkY3Qg0PDkkb2MQ94k7vQg1CYbztYqZ3E/s=; b=Yw4WG7R6ZmSwgUAqvPrKAaDKcnfqfZ9gLofMsdvIUow2K4EJGa8ivTLQwzsDUah9VA5goMbq4C69KSbCI663x6KTI5lTuHoGqrfGtoVjKLd80rQlOJbXzbLKhKZJzQnhQ9CgCS4ySSj7NtyeFucfikR0MNfHXLy9SO/u2CsBvko= 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 1593768280880917.0192230967787; Fri, 3 Jul 2020 02:24:40 -0700 (PDT) Received: from localhost ([::1]:54486 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrHvz-0007V9-Hm for importer@patchew.org; Fri, 03 Jul 2020 05:24:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35984) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtV-0002pH-TF for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:05 -0400 Received: from us-smtp-2.mimecast.com ([205.139.110.61]:38910 helo=us-smtp-delivery-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtU-0000yJ-0i for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:05 -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-78-SiLobQuyMleMxuVHlRWzmQ-1; Fri, 03 Jul 2020 05:21:58 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9FA5F107ACCA; Fri, 3 Jul 2020 09:21:57 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id AD86A7AC63; Fri, 3 Jul 2020 09:21:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768120; 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=TVF5KUpHWkY3Qg0PDkkb2MQ94k7vQg1CYbztYqZ3E/s=; b=bbNsrPgZry0pKwnEnauxzeu0bOgh2iqDFtH8VXq4mA5rKEskTDQ/FQXq3yMoq7sVbQwfeJ m4bHGwTrNKfWrrVZesoYIfa7XwEYGV+otiERZju4pkOTmQpibMJwcgajK8HUgP/VMJgirW /9po8Z4j9Trfk2sfp3MPwRg3UwM5VrE= X-MC-Unique: SiLobQuyMleMxuVHlRWzmQ-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 5/7] vvfat: Fix array_remove_slice() Date: Fri, 3 Jul 2020 11:21:41 +0200 Message-Id: <20200703092143.165594-6-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=205.139.110.61; envelope-from=kwolf@redhat.com; helo=us-smtp-delivery-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 03:17:33 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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" array_remove_slice() calls array_roll() with array->next - 1 as the destination index. This is only correct for count =3D=3D 1, otherwise we're writing past the end of the array. array->next - count would be correct. However, this is the only place ever calling array_roll(), so this rather complicated operation isn't even necessary. Fix the problem and simplify the code by replacing it with a single memmove() call. array_roll() can now be removed. Reported-by: Nathan Huckleberry Signed-off-by: Kevin Wolf Message-Id: <20200623175534.38286-3-kwolf@redhat.com> Reviewed-by: Eric Blake Signed-off-by: Kevin Wolf --- block/vvfat.c | 42 +++++------------------------------------- 1 file changed, 5 insertions(+), 37 deletions(-) diff --git a/block/vvfat.c b/block/vvfat.c index 62230542e5..2eb8cbb19f 100644 --- a/block/vvfat.c +++ b/block/vvfat.c @@ -140,48 +140,16 @@ static inline void* array_insert(array_t* array,unsig= ned int index,unsigned int return array->pointer+index*array->item_size; } =20 -/* this performs a "roll", so that the element which was at index_from bec= omes - * index_to, but the order of all other elements is preserved. */ -static inline int array_roll(array_t* array,int index_to,int index_from,in= t count) -{ - char* buf; - char* from; - char* to; - int is; - - if(!array || - index_to<0 || index_to>=3Darray->next || - index_from<0 || index_from>=3Darray->next) - return -1; - - if(index_to=3D=3Dindex_from) - return 0; - - is=3Darray->item_size; - from=3Darray->pointer+index_from*is; - to=3Darray->pointer+index_to*is; - buf=3Dg_malloc(is*count); - memcpy(buf,from,is*count); - - if(index_to=3D0); assert(count > 0); assert(index + count <=3D array->next); - if(array_roll(array,array->next-1,index,count)) - return -1; + + memmove(array->pointer + index * array->item_size, + array->pointer + (index + count) * array->item_size, + (array->next - index - count) * array->item_size); + array->next -=3D count; return 0; } --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768716; cv=none; d=zohomail.com; s=zohoarc; b=n35PICgAWU8IGFpvxpdogLGca6DVNbXuC5TYFQpphn8K+3ztkxTQrfl6ylwRfBwO0j5KUlnffhSvFa9RfFORwgX3P7f8iTSlPTYl8dsCnJPJwb0RhgGbtGhYrEY4m8faLJOjS7+LQMg78CH36gvGMezrdrlDFxeJ8CcC/M3qxSE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768716; 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=worektGU7t2KWezXJC7Li6H7iMdOkxSQixsswdULoXw=; b=RLVtg7G6Cu+99QscYV3M8//RoXfYaBSI4i0PsREFmXThQXdRs//+odu99t63Qe8v3pCPoAxDlDQr0dEaBDbBeDzbsJzg4onvFiVSUBOcHIKZK6PkMBDH4G5NzVOoimeDRRn4TClomAKYcnixwaX9CBU5XyFg1NDzDrd9srWGDNE= 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 1593768716703778.9287760994038; Fri, 3 Jul 2020 02:31:56 -0700 (PDT) Received: from localhost ([::1]:36200 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrI31-0007HJ-BO for importer@patchew.org; Fri, 03 Jul 2020 05:31:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36014) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtX-0002qx-KE for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:07 -0400 Received: from us-smtp-delivery-1.mimecast.com ([207.211.31.120]:27474 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtU-0000yW-4u for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:07 -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-175-zGX2GSglPDiAOfoCvhnDDw-1; Fri, 03 Jul 2020 05:21:59 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D8A7F8015F9; Fri, 3 Jul 2020 09:21:58 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id E7D797AC71; Fri, 3 Jul 2020 09:21:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768122; 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=worektGU7t2KWezXJC7Li6H7iMdOkxSQixsswdULoXw=; b=dvbSdRhcnwTwynaMjh/DOjO4BUQpXpl4dZ9hnft7KVFqU9+zkbuzAbncaCwMbskML3ETJN NlWLdYVryfIaKzGIklMl7/OJ5E3ucVccibhFK+Nhf64zRXAFquPSgJGYvH1qy7u2iVPbBE FqErUssLld0+kOsoCgmTRV+F71rrFqk= X-MC-Unique: zGX2GSglPDiAOfoCvhnDDw-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 6/7] iotests.py: Do not wait() before communicate() Date: Fri, 3 Jul 2020 11:21:42 +0200 Message-Id: <20200703092143.165594-7-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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=207.211.31.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 02:53:25 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN 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: Max Reitz Waiting on a process for which we have a pipe will stall if the process outputs more data than fits into the OS-provided buffer. We must use communicate() before wait(), and in fact, communicate() perfectly replaces wait() already. We have to drop the stderr=3Dsubprocess.STDOUT parameter from subprocess.Popen() in qemu_nbd_early_pipe(), because stderr is passed on to the child process, so if we do not drop this parameter, communicate() will hang (because the pipe is not closed). Signed-off-by: Max Reitz Message-Id: <20200630083711.40567-1-mreitz@redhat.com> Signed-off-by: Kevin Wolf --- tests/qemu-iotests/iotests.py | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 5ea4c4df8b..ef739dd1e3 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -146,11 +146,12 @@ def qemu_img_pipe(*args): stdout=3Dsubprocess.PIPE, stderr=3Dsubprocess.STDOUT, universal_newlines=3DTrue) - exitcode =3D subp.wait() - if exitcode < 0: + output =3D subp.communicate()[0] + if subp.returncode < 0: sys.stderr.write('qemu-img received signal %i: %s\n' - % (-exitcode, ' '.join(qemu_img_args + list(args)= ))) - return subp.communicate()[0] + % (-subp.returncode, + ' '.join(qemu_img_args + list(args)))) + return output =20 def qemu_img_log(*args): result =3D qemu_img_pipe(*args) @@ -177,11 +178,11 @@ def qemu_io(*args): subp =3D subprocess.Popen(args, stdout=3Dsubprocess.PIPE, stderr=3Dsubprocess.STDOUT, universal_newlines=3DTrue) - exitcode =3D subp.wait() - if exitcode < 0: + output =3D subp.communicate()[0] + if subp.returncode < 0: sys.stderr.write('qemu-io received signal %i: %s\n' - % (-exitcode, ' '.join(args))) - return subp.communicate()[0] + % (-subp.returncode, ' '.join(args))) + return output =20 def qemu_io_log(*args): result =3D qemu_io(*args) @@ -257,15 +258,14 @@ def qemu_nbd_early_pipe(*args): and its output in case of an error''' subp =3D subprocess.Popen(qemu_nbd_args + ['--fork'] + list(args), stdout=3Dsubprocess.PIPE, - stderr=3Dsubprocess.STDOUT, universal_newlines=3DTrue) - exitcode =3D subp.wait() - if exitcode < 0: + output =3D subp.communicate()[0] + if subp.returncode < 0: sys.stderr.write('qemu-nbd received signal %i: %s\n' % - (-exitcode, + (-subp.returncode, ' '.join(qemu_nbd_args + ['--fork'] + list(args)= ))) =20 - return exitcode, subp.communicate()[0] if exitcode else '' + return subp.returncode, output if subp.returncode else '' =20 def qemu_nbd_popen(*args): '''Run qemu-nbd in daemon mode and return the parent's exit code''' @@ -1062,11 +1062,11 @@ def qemu_pipe(*args): subp =3D subprocess.Popen(args, stdout=3Dsubprocess.PIPE, stderr=3Dsubprocess.STDOUT, universal_newlines=3DTrue) - exitcode =3D subp.wait() - if exitcode < 0: + output =3D subp.communicate()[0] + if subp.returncode < 0: sys.stderr.write('qemu received signal %i: %s\n' % - (-exitcode, ' '.join(args))) - return subp.communicate()[0] + (-subp.returncode, ' '.join(args))) + return output =20 def supported_formats(read_only=3DFalse): '''Set 'read_only' to True to check ro-whitelist --=20 2.25.4 From nobody Sun Feb 8 17:51:11 2026 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=1593768909; cv=none; d=zohomail.com; s=zohoarc; b=a/8ZjKObAGZuyFjZoEZP+dU5iJbah7UZ22X7Cu/Fu487rctS0WJcacEw1c1UkbGwqg4ecaBpwMeZIxm4oCqI7kSJxqloF5Hr/JzI3GQBVlSicyf16VHiEcPqQ+PbEKNAnrjp0TzEgmx0Yw4P40HLVyT1hiRMsMjSzdCygJjtO+Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1593768909; 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=tFtSJJBUvX6PJuZeC0cgXFvmmdXZ2AJHL25InONN2Wk=; b=NnqhDJkY1tR6XTIi2lt+aTHnSc3HxQ1K5ckEJkW0/O5OYkF4TRH0eAcmxGOP00TkrKCmMoLQPuWHH4mQLrLuv0HQI5LqSd1l/ZgOp2yEcFT63bt0z9iGlxnFcy9K+bIfSjzE9oaUgdQOQZn/YzxQPDK8RTmcClk62hNyAMpwaHs= 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 1593768909366923.668760482418; Fri, 3 Jul 2020 02:35:09 -0700 (PDT) Received: from localhost ([::1]:51462 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jrI68-00062j-3h for importer@patchew.org; Fri, 03 Jul 2020 05:35:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36038) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jrHtY-0002rs-5l for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:09 -0400 Received: from us-smtp-delivery-1.mimecast.com ([205.139.110.120]:43593 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1jrHtU-0000ye-2k for qemu-devel@nongnu.org; Fri, 03 Jul 2020 05:22:07 -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-474-nkVBivhaO_ubOJkzxfvWiw-1; Fri, 03 Jul 2020 05:22:01 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1F0F0800FEA; Fri, 3 Jul 2020 09:22:00 +0000 (UTC) Received: from linux.fritz.box.com (ovpn-114-90.ams2.redhat.com [10.36.114.90]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2CE227AC63; Fri, 3 Jul 2020 09:21:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593768123; 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=tFtSJJBUvX6PJuZeC0cgXFvmmdXZ2AJHL25InONN2Wk=; b=LEwRluyYYzdvLbJr+n8b8X9dc7UK/Hm+55DyDuPDeq7GFxL/V9XIt/20qHnHQXEgFCBCu4 hh92dxOy7un+OZCxhDhVZvyqKxzud6MtyK/C4trvOoketdxZnepzITXrb3FZuulnjmTB6y +Xw1YX+LBsg7cJIWz/8tcL5Lfn+iuX8= X-MC-Unique: nkVBivhaO_ubOJkzxfvWiw-1 From: Kevin Wolf To: qemu-block@nongnu.org Subject: [PULL 7/7] iotests: Fix 051 output after qdev_init_nofail() removal Date: Fri, 3 Jul 2020 11:21:43 +0200 Message-Id: <20200703092143.165594-8-kwolf@redhat.com> In-Reply-To: <20200703092143.165594-1-kwolf@redhat.com> References: <20200703092143.165594-1-kwolf@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 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-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=205.139.110.120; envelope-from=kwolf@redhat.com; helo=us-smtp-1.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/03 03:38:32 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1, 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_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN 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) From: Philippe Mathieu-Daud=C3=A9 Commit 96927c744 replaced qdev_init_nofail() call by isa_realize_and_unref() which has a different error message. Update the test output accordingly. Gitlab CI error after merging b77b5b3dc7: https://gitlab.com/qemu-project/qemu/-/jobs/597414772#L4375 Reported-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Alex Benn=C3=A9e Reviewed-by: John Snow Reviewed-by: Thomas Huth Message-Id: <20200616154949.6586-1-philmd@redhat.com> Message-Id: <20200624140446.15380-2-alex.bennee@linaro.org> Signed-off-by: Kevin Wolf --- tests/qemu-iotests/051.pc.out | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/qemu-iotests/051.pc.out b/tests/qemu-iotests/051.pc.out index 0ea80d35f0..da8ad87187 100644 --- a/tests/qemu-iotests/051.pc.out +++ b/tests/qemu-iotests/051.pc.out @@ -142,7 +142,7 @@ QEMU X.Y.Z monitor - type 'help' for more information =20 Testing: -drive if=3Dide QEMU X.Y.Z monitor - type 'help' for more information -(qemu) QEMU_PROG: Initialization of device ide-hd failed: Device needs med= ia, but drive is empty +(qemu) QEMU_PROG: Device needs media, but drive is empty =20 Testing: -drive if=3Dvirtio QEMU X.Y.Z monitor - type 'help' for more information @@ -214,7 +214,7 @@ QEMU X.Y.Z monitor - type 'help' for more information =20 Testing: -drive file=3DTEST_DIR/t.qcow2,if=3Dide,readonly=3Don QEMU X.Y.Z monitor - type 'help' for more information -(qemu) QEMU_PROG: Initialization of device ide-hd failed: Block node is re= ad-only +(qemu) QEMU_PROG: Block node is read-only =20 Testing: -drive file=3DTEST_DIR/t.qcow2,if=3Dvirtio,readonly=3Don QEMU X.Y.Z monitor - type 'help' for more information --=20 2.25.4