From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 24 Jul 2026 16:56:21 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f192.google.com (mail-lj1-f192.google.com [209.85.208.192]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 66OEuIRE016663 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 24 Jul 2026 16:56:19 +0200 Received: by mail-lj1-f192.google.com with SMTP id 38308e7fff4ca-39db6f712b7sf2721411fa.3 for ; Fri, 24 Jul 2026 07:56:19 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1784904973; cv=pass; d=google.com; s=arc-20260327; b=Bd54gnCChjXFeYP2b1OvKBUzXpI/iNfrnXAqh3vUgr9BUiPwiUNus8zrH50ctZ7vl2 dsg7/SBdXhLixiUcpL6xwb+5yIuiWX05Lm3A7ljuhNQjFIa14iHrhaMTIR4UB6KDMDyF chd7kLjTIMhM+0JEy1Ha2IiEzMPEBJdEoCZSy+/amVZQIEa0diGZHTum/bhlmuXbicdD KEWVlpfVwsRUtbj+KsvL1ojnNqltPEetHcOavBGKD3ZLTJYCNxxL9gmb7q6yXg6/nN+h OqfwsrJSUZJuo0Ai53e8RaKc8YMt44kTWdeNAJmjUWjbXj1XbpyIk0sfB7SyOE80YmWz TgzQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:content-transfer-encoding :in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:sender:dkim-signature; bh=D4otMcBA1FCSe9uFtMqjE3bgPcF98CvJdJ+h2xJSfMg=; fh=TY5AmJLXfAzoHVF4dyC3W6hVzRpO5DvNB+rfEMh3Q1M=; b=HgidZKLyMGNKXUk0ySKDFCz1epMtvx1d/3hvZerq4+AKf5CRaDcArdxMEqFBnnQ9Eu SGy9zhuP0lMRXc/RPVvKLwHSigaX9xWS059mutVispewnK52BEVYe4q7Oc7wqWJL1K0v s2JyJjpRkH+DHEhZw2BBmm/QEIadzhFqiVNMoveraU3aBgsggGQ5SV9dYnvxk21CizQb nMG8WExGJ5Oft2rzS6nGQuXT37bmWPQhKsv34STS+GFRz2zg1CpkG42tyWEP0rn91Rk8 izr9z0OcJ40CPhtyERAW5XaKiOOsqSFteNdX/R/Ia4NE+DSF87jjmPeOtzuogR5NBNqm sI/w==; darn=ilbers.de ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1784904973; x=1785509773; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:content-transfer-encoding:content-type :in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:sender:from:to:cc:subject :date:message-id:reply-to:content-type; bh=D4otMcBA1FCSe9uFtMqjE3bgPcF98CvJdJ+h2xJSfMg=; b=ROm9GLSB1hy7jv5GosdOnTY8AetAIb4EhnJ0kgWTMi/3N6ogRaciuTZJDGAoci6xYK aRbGK+Jshn2AsByl3zQYbed3cUbsHBSF2EqIK6ZWluwJ1t2AqOArySXpzSvI3WJjkAfx QyHPAqWslA3ND3wQPAjQ3VhsCC7gszJoeBCRzw0EIT8dQrrhyVw3RcsNFe+2Ptfcw36R hWrgcoEnGp2MxbWr+qAhhNu502NWzol9qJbjjNC3KeyN/y0j9Hl89sPIaFd966OD1kgl rOjoV1/g8aaO092EDP3BgNNriJrKjxQ7w4PS6h5wqJeulvXbhUx2cl+of+j2u0mOJG/g SU/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784904973; x=1785509773; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender :content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-beenthere:x-gm-message-state:sender:from:to:cc :subject:date:message-id:reply-to:content-type; bh=D4otMcBA1FCSe9uFtMqjE3bgPcF98CvJdJ+h2xJSfMg=; b=XE7dS2eTTaFyUmcxf7jPQnAidccl4lQfBnG4nyRKLOWa+tzrbrRc/pFfpdU/hn3soa gUrZq+IpNGTzrZkk2539cPbbvOa3j2P/3qPXCc+JwBQm3e9SNNbx7qgnSfOv+CVdGeTv abRFAGXwqwvSVgAu/7jGZe91Wb1SRINOHwrYlSjdrS4lk/t2ahJ7Oh33ZuTwCNJdPZ4I 8+He5sIBCngI3xar9uJvifTpT/zmNtizJK1/2mtdsfZFHL+RchWaF8otenhK7FEeBYJr PIg+IsL016sInmHlmQWX7ra3Yn/rQ61qFTkj2+dahhsTetcm1mXjEMQT6j2sscpTHDUE 6xxg== Sender: isar-users@googlegroups.com X-Forwarded-Encrypted: i=2; AHgh+RqMr6gsLucsbAj01T6/in3iNyFyUKjaJW76So7Z/vK6BvJW5a1egEiebLobTf/3hbz1bfBy@ilbers.de X-Gm-Message-State: AOJu0YzZ8o7AT8un7zAQgzovemdlD3JmcZg0WjxvmkUv6cvk3nBzXq2N bbgK3jGNmKo3T5pF0Q9JiyVBGsxHMzxonEc6QQcUcxYwT1PSe8TNKJ85 X-Received: by 2002:a05:651c:2210:b0:39b:2757:c1d6 with SMTP id 38308e7fff4ca-39f07f582famr18841311fa.38.1784904973009; Fri, 24 Jul 2026 07:56:13 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="Aa7YSPTZmlRZa/NXprUCEEz7jQAkOAFWvUdc9F+7+yZh2ZjAcQ==" Received: by 2002:a05:651c:2141:b0:39b:1776:65a9 with SMTP id 38308e7fff4ca-39f064b62aels5124381fa.2.-pod-prod-02-eu; Fri, 24 Jul 2026 07:56:09 -0700 (PDT) X-Forwarded-Encrypted: i=2; AHgh+RqxCTMrgYkM3r1zMEBpTxVhM26oYK1YwNcT756gRFLT1G/mv+2Krvt3bDs5HcwIaJX993gxrtImqsOx@googlegroups.com X-Received: by 2002:ac2:5dd0:0:b0:5b2:8ce9:10f8 with SMTP id 2adb3069b0e04-5b2b2f4e210mr1336667e87.20.1784904969376; Fri, 24 Jul 2026 07:56:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1784904969; cv=none; d=google.com; s=arc-20260327; b=UBqT7QtuQSuI9CFu5KjBJkngPsMz2sL8xzjjAENoYps3Vb7F5w6HjX610fYbeymY6n ZfQwnEdKbQLR8yRNi5dsTKCOAA2K8IriFHW/DgrwHDpU75EpFhYMl4uJ2jX2wVnMenlE hf8JmbcpVhE5ARBJlw8KvuXZH54D59bDO4FY3nZAoZQJhRIVJWEJfmgokgyS+krJLdnO U03ZjduIBy0j+rVFJDlHCUxAhULqL0pjxAo/kX9a+Rxa/NaGULylbe4rkyOunBBAzPUC qt8aDaAWP3h85p3ACQd+LhlKH2w/y92OxXnvb8LVBebxYohjRQ5iRAG/mamoP+hEXqQm zB4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id; bh=LCjymEQZyZERG9q3ZzyCfeHUTBaQzfYYQKR2aaMwiLA=; fh=oj2Lw3hN0xAF1UllTKVHI9r/7a2eBqx72zyDCjayfJ0=; b=apaEmnYkmiH7CQKeRjDrOqqhmGLJr6frOvGvSQ6VP531q8dnyuyBEBkbwE1RzUWSGY /PHDXeWG4l8gYmVp5yssg0K3uMLFblmDOrtWFw0Yq3VWvIlV0wTYDx/k70Lb0ItFpPTr D49jPVCNar4vXpJaDYXiTk+X/lX2sJA/+dx2eV1E8sqzBeCl2zD5JBiLymEssU0A9LRr 3p544XcaXkYWqgvqdD+rXdjUh8OEjT8fJyLKQktfrMizpt+GN+tRmLAhzvlkeudf9G9O 5v7CmG5y9gddeZ3Y/U+UgXRH3IGe91mULaFmuBwmRvlE3iSP00NioGXAzV6pkaJqcM/c BAlQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5b2a9d1ac6asi144369e87.6.2026.07.24.07.56.09 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 24 Jul 2026 07:56:09 -0700 (PDT) Received-SPF: pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Received: from [192.168.178.139] ([88.130.203.42]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 66OEu7IH016653 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 24 Jul 2026 16:56:08 +0200 Message-ID: <28db2fc3-e0ef-41a5-8350-bd9f8cc2e313@ilbers.de> Date: Fri, 24 Jul 2026 16:56:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 2/3] testsuite: speedup execution by limiting mc parsing to selected targets To: Felix Moessbauer , isar-users@googlegroups.com Cc: jan.kiszka@siemens.com References: <20260720073703.3782697-1-felix.moessbauer@siemens.com> <20260720073703.3782697-3-felix.moessbauer@siemens.com> Content-Language: en-US From: Zhihang Wei In-Reply-To: <20260720073703.3782697-3-felix.moessbauer@siemens.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-4.6 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-Original-Sender: wzh@ilbers.de X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-TUID: CDZoyNjCSEWl On 7/20/26 09:37, 'Felix Moessbauer' via isar-users wrote: > The global isar mc.conf has over 70 multiconfig targets defined. This > makes initial parsing super slow, leading to parse times of 5-10 minutes > on testsuite tasks (per avocado task execution). To speed this up, We now > set the BBMULTICONFIG bitbake variable to exactly the targets we want to > test. This reduces the parsing time of tests to ~10s per test. > > When running with sstate cache, this massively speeds up repeated runs, > as the parse time was the biggest single contributor. > > Signed-off-by: Felix Moessbauer > --- > testsuite/cibase.py | 20 +++++++++++--------- > testsuite/cibuilder.py | 17 +++++++++++++++++ > testsuite/repro-build-test.py | 1 + > 3 files changed, 29 insertions(+), 9 deletions(-) > > diff --git a/testsuite/cibase.py b/testsuite/cibase.py > index 4a6308d0..52748004 100755 > --- a/testsuite/cibase.py > +++ b/testsuite/cibase.py > @@ -15,7 +15,7 @@ from avocado.utils import process > =20 > class CIBaseTest(CIBuilder): > def perform_build_test(self, targets, should_fail=3DFalse, **kwargs= ): > - self.configure(**kwargs) > + self.configure(targets=3Dtargets, **kwargs) > =20 > if bool(int(self.params.get('depgraph', default=3D0))): > self.generate_dependency_graph(targets, reconfigure=3DFalse= , **kwargs) > @@ -31,7 +31,7 @@ class CIBaseTest(CIBuilder): > **kwargs): > """Debug helper to better understand test task graphs.""" > if reconfigure: > - self.configure(**kwargs) > + self.configure(targets=3Dtargets, **kwargs) > =20 > self.log.info("Generating dependency graph...") > =20 > @@ -41,7 +41,7 @@ class CIBaseTest(CIBuilder): > self.move_in_build_dir('pn-buildlist', f"pn-buildlist-{self.nam= e}") > =20 > def perform_wic_partition_test(self, targets, wic_deploy_parts, **k= wargs): > - self.configure(wic_deploy_parts=3Dwic_deploy_parts, **kwargs) > + self.configure(targets=3Dtargets, wic_deploy_parts=3Dwic_deploy_= parts, **kwargs) > self.bitbake(targets, **kwargs) > =20 > wic_path =3D f"{self.build_dir}/tmp/deploy/images/*/*.wic.p1" > @@ -57,6 +57,7 @@ class CIBaseTest(CIBuilder): > gpg_priv_key =3D os.path.join(keys_dir, 'test_priv.key') > =20 > self.configure( > + targets=3Dtargets, > gpg_pub_key=3Dgpg_pub_key if signed else None, > sstate_dir=3D'', > **kwargs, > @@ -76,6 +77,7 @@ class CIBaseTest(CIBuilder): > repro_type =3D 'signed' if signed else 'unsigned' > self.move_in_build_dir('tmp', f"tmp_middle_repro_{repro_typ= e}") > self.configure( > + targets=3Dtargets, > gpg_pub_key=3Dgpg_pub_key if signed else None, > offline=3DTrue, > sstate_dir=3D'', > @@ -89,7 +91,7 @@ class CIBaseTest(CIBuilder): > =20 > if not signed: > # Try to build with changed configuration with no clean= up > - self.configure(**kwargs) > + self.configure(targets=3Dtargets, **kwargs) > self.bitbake(targets, **kwargs) > =20 > finally: > @@ -109,7 +111,7 @@ class CIBaseTest(CIBuilder): > count +=3D int(content[field]) > return count > =20 > - self.configure(ccache=3DTrue, sstate_dir=3D'', **kwargs) > + self.configure(targets=3Dtargets, ccache=3DTrue, sstate_dir=3D''= , **kwargs) > =20 > # Field that stores direct ccache hits > direct_cache_hit =3D 22 > @@ -173,7 +175,7 @@ class CIBaseTest(CIBuilder): > process.run(f"git --work-tree=3D{isar_sstate} checkout HEAD -- = .") > =20 > self.init('../build-sstate', isar_dir=3Disar_sstate) > - self.configure(sstate=3DTrue, sstate_dir=3D'', **kwargs) > + self.configure(targets=3Dimage_target, sstate=3DTrue, sstate_dir= =3D'', **kwargs) > =20 > # Cleanup sstate and tmp before test > self.delete_from_build_dir('sstate-cache') > @@ -196,7 +198,7 @@ class CIBaseTest(CIBuilder): > """ > Generate signature data for target(s) and check for cacheabilit= y issues > """ > - self.configure(**kwargs) > + self.configure(targets=3Dtargets, **kwargs) > self.delete_from_build_dir('tmp_before_sstate') > self.move_in_build_dir('tmp', 'tmp_before_sstate') > self.bitbake(targets, sig_handler=3D'none') > @@ -246,7 +248,7 @@ class CIBaseTest(CIBuilder): > return False > return True > =20 > - self.configure(sstate=3DTrue, sstate_dir=3D'', **kwargs) > + self.configure(targets=3D[image_target, package_target], sstate= =3DTrue, sstate_dir=3D'', **kwargs) > =20 > deploy_dir =3D f"{self.build_dir}/tmp/deploy" > =20 > @@ -380,7 +382,7 @@ class CIBaseTest(CIBuilder): > sfiles[target][fname] =3D CIUtils.get_tar_conte= nt(fname) > return sfiles > =20 > - self.configure(**kwargs) > + self.configure(targets=3Dtargets, **kwargs) > =20 > tmp_layer_dir =3D self.create_tmp_layer() > try: > diff --git a/testsuite/cibuilder.py b/testsuite/cibuilder.py > index d42e8631..1d415084 100755 > --- a/testsuite/cibuilder.py > +++ b/testsuite/cibuilder.py > @@ -104,8 +104,21 @@ class CIBuilder(Test): > if not hasattr(self, 'build_dir'): > self.error("Broken test implementation: need to call init()= .") > =20 > + @staticmethod > + def _extract_multiconfigs(targets): > + if isinstance(targets, str): > + targets =3D [targets] > + mc_names =3D set() > + for target in targets: > + if target.startswith('mc:'): > + parts =3D target.split(':') > + if len(parts) >=3D 2: > + mc_names.add(parts[1]) > + return mc_names > + > def configure( > self, > + targets=3DNone, > compat_arch=3DTrue, > cross=3DTrue, > debsrc_cache=3DFalse, > @@ -196,6 +209,10 @@ class CIBuilder(Test): > =20 > # write ci_build.conf > with open(self.build_dir + '/conf/ci_build.conf', 'w') as f: > + if targets: > + mc_names =3D self._extract_multiconfigs(targets) > + if mc_names: > + f.write('BBMULTICONFIG =3D "%s"\n\n' % ' '.join(sort= ed(mc_names))) > if compat_arch: > f.write( > 'ISAR_ENABLE_COMPAT_ARCH:amd64 =3D "1"\n' > diff --git a/testsuite/repro-build-test.py b/testsuite/repro-build-test.p= y > index c06269f5..c1b51aff 100755 > --- a/testsuite/repro-build-test.py > +++ b/testsuite/repro-build-test.py > @@ -50,6 +50,7 @@ class ReproBuild(CIBuilder): > # Build > self.log.info("Started Build " + image_name) > self.configure( > + targets=3Dtarget, > source_date_epoch=3Dsource_date_epoch, use_apt_snapshot=3DT= rue > ) > self.bitbake(target) Hi, It seems this patch does not work with the installer testsuite (-t =C2=A0installer). After the build testcase "test_installer_build" passed, the following "test_installer_run" and "test_installer_root_partition" tests failed. Some log: ...... [stdlog] 2026-07-21 18:11:07,304 avocado.test stacktrace=C2=A0 =C2=A0 =C2= =A0 =C2=A0L0049=20 ERROR|=C2=A0 =C2=A0File "/build/isar_wzh_devel_6a/76/bitbake/lib/bb/cooker.= py",=20 line 1040, in findBestProvider [stdlog] 2026-07-21 18:11:07,304 avocado.test stacktrace=C2=A0 =C2=A0 =C2= =A0 =C2=A0L0049=20 ERROR|=C2=A0 =C2=A0 =C2=A0if pn in self.recipecaches[mc].providers: [stdlog] 2026-07-21 18:11:07,304 avocado.test stacktrace=C2=A0 =C2=A0 =C2= =A0 =C2=A0L0049=20 ERROR|=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ~~~~~~~~~~~~~~~~~^^^= ^ [stdlog] 2026-07-21 18:11:07,304 avocado.test stacktrace=C2=A0 =C2=A0 =C2= =A0 =C2=A0L0049=20 ERROR| KeyError: 'qemuamd64-bookworm' Zhihang --=20 You received this message because you are subscribed to the Google Groups "= isar-users" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to isar-users+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/isar-users/= 28db2fc3-e0ef-41a5-8350-bd9f8cc2e313%40ilbers.de.