From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Wed, 15 Jul 2026 12:02:38 +0200 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wjwRq-0040AF-1p for lore@lore.pengutronix.de; Wed, 15 Jul 2026 12:02:38 +0200 Received: from [127.0.0.1] (helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1wjwRl-0008Cd-Ho; Wed, 15 Jul 2026 12:02:33 +0200 Received: from mx1.white.stw.pengutronix.de ([185.203.200.13]) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1wjwRI-0006BV-0Q for ptxdist@pengutronix.de; Wed, 15 Jul 2026 12:02:04 +0200 Received: from drehscheibe.grey.stw.pengutronix.de (drehscheibe.grey.stw.pengutronix.de [IPv6:2a0a:edc0:0:c01:1d::a2]) (Authenticated sender: relay-from-drehscheibe.grey.stw.pengutronix.de) by mx1.white.stw.pengutronix.de (Postfix) with ESMTPSA id EBE4720222C; Wed, 15 Jul 2026 12:01:58 +0200 (CEST) Received: from dude05.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::54]) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wjwRC-001uop-2q; Wed, 15 Jul 2026 12:01:58 +0200 Received: from mol by dude05.red.stw.pengutronix.de with local (Exim 4.98.2) (envelope-from ) id 1wjwRC-00000005Gg1-3TlT; Wed, 15 Jul 2026 12:01:58 +0200 From: Michael Olbrich To: ptxdist@pengutronix.de Date: Wed, 15 Jul 2026 12:01:58 +0200 Message-ID: <20260715100158.1255738-1-m.olbrich@pengutronix.de> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260709073246.23988-1-bruno.thomsen@gmail.com> References: <20260709073246.23988-1-bruno.thomsen@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on metis.whiteo.stw.pengutronix.de X-Spam-Level: X-Spam-Status: No, score=-3.6 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham autolearn_force=no version=3.4.2 Subject: Re: [ptxdist] [APPLIED] ptxd_make_world_install_pack: fix system-python3/lib64 race X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: Bruno Thomsen Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false Thanks, applied as 111ae94e6720c08d227120aedf5b983e9834aab2. Michael [sent from post-receive hook] On Wed, 15 Jul 2026 12:01:58 +0200, Bruno Thomsen wrote: > Our pipeline random failed a few minutes into the build when > building chardet, defusedxml, boolean-py or markupsafe python3 > packages. The errors all relates to setuptools but can look a > little different. It was traced down to a race condition in > system-python3/lib64 link handling, so extend existing > handling in ptxd_make_world_install_pack function. > > Short errors: > > ModuleNotFoundError: No module named 'distutils' > ModuleNotFoundError: No Module named 'setuptools.errors' > FileNotFoundError: ...site-packages/setuptools/logging.py > > Long error: > > finished target host-system-python3-defusedxml.install.post > ---------------------------------------------- > target: host-system-python3-markupsafe.install > ---------------------------------------------- > Traceback (most recent call last): > File "/builds/emperor/ptxdist/platform-emperor/build-host/system-MarkupSafe-3.0.3/setup.py", line 5, in > from setuptools import Extension > File "/builds/emperor/ptxdist/platform-emperor/sysroot-host/usr/lib/system-python3/lib64/python3.14/site-packages/setuptools/__init__.py", line 26, in > from .dist import Distribution > File "/builds/emperor/ptxdist/platform-emperor/sysroot-host/usr/lib/system-python3/lib64/python3.14/site-packages/setuptools/dist.py", line 20, in > from . import ( > ...<4 lines>... > ) > File "/builds/emperor/ptxdist/platform-emperor/sysroot-host/usr/lib/system-python3/lib64/python3.14/site-packages/setuptools/_entry_points.py", line 11, in > from .errors import OptionError > ModuleNotFoundError: No module named 'setuptools.errors' > make: *** [/usr/local/lib/ptxdist-2026.07.0/rules/post/ptxd_make_world_install.make:40: /builds/emperor/ptxdist/platform-emperor/state/host-system-python3-markupsafe.install] Error 1 > make: *** Waiting for unfinished jobs.... > > Signed-off-by: Bruno Thomsen > Co-developed-by: Lars Alex Pedersen > Message-Id: <20260709073246.23988-1-bruno.thomsen@gmail.com> > Signed-off-by: Michael Olbrich > > diff --git a/scripts/lib/ptxd_make_world_install.sh b/scripts/lib/ptxd_make_world_install.sh > index b661036fd7cc..ab8f442a21a9 100644 > --- a/scripts/lib/ptxd_make_world_install.sh > +++ b/scripts/lib/ptxd_make_world_install.sh > @@ -257,7 +257,7 @@ ptxd_make_world_install_pack() { > > # remove usr-merge and lib64 symlinks. They exist in sysroot anyways, > # so avoid races when they are overwritten > - for link in bin sbin lib lib64 usr/lib64; do > + for link in bin sbin lib lib64 usr/lib64 usr/lib/system-python3/lib64; do > link="${pkg_pkg_dir}/${link}" > if [ -h "${link}" ]; then > rm "${link}"