From nobody Sun Apr 12 05:50:44 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=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1770827694; cv=none; d=zohomail.com; s=zohoarc; b=elu2QvHwFd53LXlkErIKhUUhAy55/Ye0aI6jF6Qj62mbUhhIqDJhDLgA+01ZpF1bfiPdzpcoBqpzQscSLAYaKDDyDr876eiCFMRINnyjxj4Ow/ByfE6vtFhJ9X3TjDcswxzoqc623ysVyOnNM6u56QsuytoEWaiwi5sgL3T4Aio= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770827694; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tSTjl1rRCQTSLUmPFrvSWqmKYwXSQIbkIncGIVUNYI8=; b=nBzkULcFLQIGP+sdtinVFnnejLXoVJpXUhFVg72UutdOg2AuKi1PdANA58XCFCzYCcglPoMpo+nRjCdE3q1gJkCyI4MGFeQdGsdToB+hHJgJY4y+zvQgaOnIl4P1ZXHIz8yPSDOvr57XeXcpYH3U1PtxgmfQAN/Ro2k92F9wClk= 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=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177082769445284.53959877815362; Wed, 11 Feb 2026 08:34:54 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vqD9v-0005XY-VY; Wed, 11 Feb 2026 11:33:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vqD9u-0005WY-BZ for qemu-devel@nongnu.org; Wed, 11 Feb 2026 11:33:46 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vqD9s-0003gY-I0 for qemu-devel@nongnu.org; Wed, 11 Feb 2026 11:33:46 -0500 Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-445-HKGBKKxqNveKGKUL_WsyGA-1; Wed, 11 Feb 2026 11:33:40 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id ACCA1195608D; Wed, 11 Feb 2026 16:33:39 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.45.227.9]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 33FFB19560B5; Wed, 11 Feb 2026 16:33:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1770827623; 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=tSTjl1rRCQTSLUmPFrvSWqmKYwXSQIbkIncGIVUNYI8=; b=bhdAy/uVyHiJf4tRiOu8EWi0C4jB7iXDzua2sV/uaK2wAo+BE1jBgTjT1P78VGGjUFNFlS 8HxpIoeDMBV69KVqYEH2ZdqDFX1qyQDKYzM6Pan5DqnHLZc8MHLYJ1vbocgbgjXi1xaME3 U/sQVhr/jPddqMxcp/fmXnYdssaQBY0= X-MC-Unique: HKGBKKxqNveKGKUL_WsyGA-1 X-Mimecast-MFC-AGG-ID: HKGBKKxqNveKGKUL_WsyGA_1770827619 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: qemu-devel@nongnu.org Cc: Thomas Huth , Hanna Reitz , Pierrick Bouvier , Kevin Wolf , qemu-block@nongnu.org, Cleber Rosa , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Paolo Bonzini , John Snow , =?UTF-8?q?Alex=20Benn=C3=A9e?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH v4 04/15] tests: ensure all qcow2 I/O tests are able to be run via make Date: Wed, 11 Feb 2026 16:33:07 +0000 Message-ID: <20260211163318.938776-5-berrange@redhat.com> In-Reply-To: <20260211163318.938776-1-berrange@redhat.com> References: <20260211163318.938776-1-berrange@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 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=170.10.129.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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-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.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1770827696057154100 For block formats marked as 'quick', only tests in the 'auto' group are added to the meson test suite. The result of this is that qcow2 tests not in the 'auto' group cannot be run at all, even if passing SPEED=3Dslow or SPEED=3Dthorough. To fix this we need todo two passes over the I/O test list. First add all tests from 'auto' group into the 'block' suite, so they are run by default. Then on the second pass add any tests which were not in 'auto' into the 'block-slow' suite, so they get run when SPEED=3Dslow or SPEED=3Dthorough. Reviewed-by: Thomas Huth Signed-off-by: Daniel P. Berrang=C3=A9 --- tests/qemu-iotests/meson.build | 48 ++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/tests/qemu-iotests/meson.build b/tests/qemu-iotests/meson.build index bf588cc2c9..1a24d801a3 100644 --- a/tests/qemu-iotests/meson.build +++ b/tests/qemu-iotests/meson.build @@ -30,16 +30,48 @@ endforeach qemu_iotests_check_cmd =3D files('check') =20 foreach format, speed: qemu_iotests_formats + # Formats tagged 'quick' get the subset of tests in the 'auto' + # group, run by default with 'make check' / 'make check-block' + seen =3D [] if speed =3D=3D 'quick' - suites =3D 'block' + args =3D ['-tap', '-' + format, '-g', 'auto'] + suites =3D ['block'] + + rc =3D run_command( + [python, qemu_iotests_check_cmd] + args + ['-n'], + check: true, + ) + + foreach item: rc.stdout().strip().split() + seen +=3D item + args =3D [qemu_iotests_check_cmd, + '-tap', '-' + format, item, + '--source-dir', meson.current_source_dir(), + '--build-dir', meson.current_build_dir()] + # Some individual tests take as long as 45 seconds + # Bump the timeout to 3 minutes for some headroom + # on slow machines to minimize spurious failures + test('io-' + format + '-' + item, + python, + args: args, + depends: qemu_iotests_binaries, + env: qemu_iotests_env, + protocol: 'tap', + timeout: 180, + suite: suites) + endforeach + endif + + suites =3D [] + # Any format tagged quick or slow also gets added to slow + # otherwise its tagged thorough + if speed !=3D 'thorough' + suites +=3D ['block-slow'] else - suites =3D ['block-' + speed] + suites +=3D ['block-thorough'] endif =20 args =3D ['-tap', '-' + format] - if speed =3D=3D 'quick' - args +=3D ['-g', 'auto'] - endif =20 rc =3D run_command( [python, qemu_iotests_check_cmd] + args + ['-n'], @@ -47,6 +79,12 @@ foreach format, speed: qemu_iotests_formats ) =20 foreach item: rc.stdout().strip().split() + # Skip any tests already added from the 'auto' group + # as they're run in the 'quick' suite already + if item in seen + continue + endif + args =3D [qemu_iotests_check_cmd, '-tap', '-' + format, item, '--source-dir', meson.current_source_dir(), --=20 2.53.0