From nobody Sun May 19 09:08:45 2024 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=1651844776; cv=none; d=zohomail.com; s=zohoarc; b=N2Jy3+ZlO/N/aRfZI4V4jlZ6CbPUM1ne8/H2ub336wK+A2+W0zp9aknc4ZDpU6Emn9qLrCgf086DIyFRbiiHRVn/b4WMI2mpOQFxjztgi38nfzqfJbxTaXnEhm+3d1Y2993FcIbhmR9qn0R6MyYI3d8wA+69RA5qpnwmns1JLfQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1651844776; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=vS8+LpB/AzCn9vqBZWdvaPaNCottJ5OTY3JpW1Ch/kg=; b=gDo0nUFByWdfvIx5ufp9CVuVR4PDDh6RSpej02W4P7i2Va9s4dWh6iqq+CLniv5l+E7+0OUbBMvKW2I3Kn85AZ9U2QHoxaxzDLiyEaFPGZU/76sc1qIXv0rlxbmxnPRJJ1NeM/ZN1/tvhkAZC2ZrqPEO+mofQlQrQvFddHoXGpE= 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) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1651844776054590.4735609845021; Fri, 6 May 2022 06:46:16 -0700 (PDT) Received: from localhost ([::1]:36296 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nmyHe-0000ih-8Q for importer@patchew.org; Fri, 06 May 2022 09:46:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60458) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nmyDw-0005ZR-Ok for qemu-devel@nongnu.org; Fri, 06 May 2022 09:42:26 -0400 Received: from us-smtp-delivery-74.mimecast.com ([170.10.133.74]:23892) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nmyDt-0004rJ-Q3 for qemu-devel@nongnu.org; Fri, 06 May 2022 09:42:23 -0400 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-630-lK5I3eUgMCewptkGbTZgmw-1; Fri, 06 May 2022 09:42:17 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 977521C06ED2; Fri, 6 May 2022 13:42:17 +0000 (UTC) Received: from localhost (unknown [10.39.193.86]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3D4832028E9B; Fri, 6 May 2022 13:42:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1651844540; 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; bh=vS8+LpB/AzCn9vqBZWdvaPaNCottJ5OTY3JpW1Ch/kg=; b=aoXTe3/kQrkSYTgerPuUBOl2ItDWMSiJnEfGPICqdqqCqJ0W/dJwz9tgCHhKkWEErkFYrt anfCXTz7922xKYqJYUQvbFGxB9uU17fNpMF4SfQqLElATLkqTopqz4yXWytMU91+khY3af bOLj9K6DLccQIH3EAEckvQRb540YCwI= X-MC-Unique: lK5I3eUgMCewptkGbTZgmw-1 From: Hanna Reitz To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, Hanna Reitz , Kevin Wolf , Thomas Huth , Vladimir Sementsov-Ogievskiy Subject: [PATCH] iotests/testrunner: Flush after run_test() Date: Fri, 6 May 2022 15:42:15 +0200 Message-Id: <20220506134215.10086-1-hreitz@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 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.133.74; envelope-from=hreitz@redhat.com; helo=us-smtp-delivery-74.mimecast.com X-Spam_score_int: -28 X-Spam_score: -2.9 X-Spam_bar: -- X-Spam_report: (-2.9 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1651844777805100001 Content-Type: text/plain; charset="utf-8" When stdout is not a terminal, the buffer may not be flushed at each end of line, so we should flush after each test is done. This is especially apparent when run by check-block, in two ways: First, when running make check-block -jX with X > 1, progress indication was missing, even though testrunner.py does theoretically print each test's status once it has been run, even in multi-processing mode. Flushing after each test restores this progress indication. Second, sometimes make check-block failed altogether, with an error message that "too few tests [were] run". I presume that's because one worker process in the job pool did not get to flush its stdout before the main process exited, and so meson did not get to see that worker's test results. In any case, by flushing at the end of run_test(), the problem has disappeared for me. Signed-off-by: Hanna Reitz Reviewed-by: Eric Blake --- tests/qemu-iotests/testrunner.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/qemu-iotests/testrunner.py b/tests/qemu-iotests/testrunn= er.py index aae70a8341..10d9e8ef27 100644 --- a/tests/qemu-iotests/testrunner.py +++ b/tests/qemu-iotests/testrunner.py @@ -378,6 +378,7 @@ def run_test(self, test: str, else: print(res.casenotrun) =20 + sys.stdout.flush() return res =20 def run_tests(self, tests: List[str], jobs: int =3D 1) -> bool: --=20 2.35.1