From: Richard Purdie Date: Thu, 18 Jun 2026 15:39:43 +0000 (+0100) Subject: sstate: Reduce native sysroot execution race potential X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;ds=sidebyside;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git sstate: Reduce native sysroot execution race potential Whilst this doesn't remove all possible issues, removing files in /bin/ directories, then removing support files (like shared libraries) does reduce the potential for weird failures if the system calls things like python3. [YOCTO #16323] Signed-off-by: Richard Purdie --- diff --git a/meta/classes-global/sstate.bbclass b/meta/classes-global/sstate.bbclass index 50dd0e51c4..4ad71a70da 100644 --- a/meta/classes-global/sstate.bbclass +++ b/meta/classes-global/sstate.bbclass @@ -474,6 +474,10 @@ def sstate_clean_manifest(manifest, d, canrace=False, prefix=None): with open(manifest) as mfile: entries = mfile.readlines() + # Remove binaries first, then all the other files, just in case somehow something + # is trying to execute something in a sysroot (e.g. python3 from PATH). + entries.sort(key=lambda d: '/bin/' not in d) + for entry in entries: entry = entry.strip() if prefix and not entry.startswith("/"):