diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-01-18 15:22:38 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-01-19 12:21:22 +0000 |
commit | 2ebe7f60fd473c720a47a1ed6b3bbc55b32cdfbf (patch) | |
tree | a7bcdcd422f03d25103d85e0d94a5d73ea30669a | |
parent | 78e30d940d1a931c65a14d864494d92f0889035e (diff) | |
download | poky-2ebe7f60fd473c720a47a1ed6b3bbc55b32cdfbf.tar.gz |
reproducible: Fix race with externalsrc/devtool over lockfile
We occasionally see races over the lockfile used by externalsrc/devtool
when walking files for the source_date_epock calculation. Skip this file
if present to avoid the issues and fix a real issue where SDE could be
contaminated too.
[YOCTO #14921]
(From OE-Core rev: 4bc0eb4bd90e6e6e46581a8ed367212bdd910a26)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/lib/oe/reproducible.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/meta/lib/oe/reproducible.py b/meta/lib/oe/reproducible.py index 9ac75c02e3..448befce33 100644 --- a/meta/lib/oe/reproducible.py +++ b/meta/lib/oe/reproducible.py | |||
@@ -131,6 +131,9 @@ def get_source_date_epoch_from_youngest_file(d, sourcedir): | |||
131 | files = [f for f in files if not f[0] == '.'] | 131 | files = [f for f in files if not f[0] == '.'] |
132 | 132 | ||
133 | for fname in files: | 133 | for fname in files: |
134 | if fname == "singletask.lock": | ||
135 | # Ignore externalsrc/devtool lockfile [YOCTO #14921] | ||
136 | continue | ||
134 | filename = os.path.join(root, fname) | 137 | filename = os.path.join(root, fname) |
135 | try: | 138 | try: |
136 | mtime = int(os.lstat(filename).st_mtime) | 139 | mtime = int(os.lstat(filename).st_mtime) |