summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2023-11-08 22:01:57 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-11-09 11:28:16 +0000
commit6f427822e88442205c023de8215ab4cc55daff67 (patch)
tree5b5ed0908e6ede49bda5efaf51ab097f8791b014 /bitbake/lib/bb/runqueue.py
parenta4734d6b6aa51f55bd23d503360cd6da435f939c (diff)
downloadpoky-6f427822e88442205c023de8215ab4cc55daff67.tar.gz
bitbake: runqueue: Fix errors when using -S printdiff
When running printdiff, messages like: "Can't find a task we're supposed to have written out?" might be shown. This happens when hashequivalence is enabled and is due to the use of "hash" when "unihash" should be used (which defaults back to hash). Changing this fixed various errors oe-selftest highlighted. Also print the task ID when erroring about a missing task as it aids debugging. (Bitbake rev: e7783bbe0559abb91f5038cf83575c0f25138af2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 074edd0763..475c3c5052 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -1767,14 +1767,14 @@ class RunQueue:
1767 for tid in invalidtasks: 1767 for tid in invalidtasks:
1768 (mc, fn, taskname, taskfn) = split_tid_mcfn(tid) 1768 (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
1769 pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn] 1769 pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn]
1770 h = self.rqdata.runtaskentries[tid].hash 1770 h = self.rqdata.runtaskentries[tid].unihash
1771 matches = bb.siggen.find_siginfo(pn, taskname, [], self.cooker.databuilder.mcdata[mc]) 1771 matches = bb.siggen.find_siginfo(pn, taskname, [], self.cooker.databuilder.mcdata[mc])
1772 match = None 1772 match = None
1773 for m in matches: 1773 for m in matches:
1774 if h in m: 1774 if h in m:
1775 match = m 1775 match = m
1776 if match is None: 1776 if match is None:
1777 bb.fatal("Can't find a task we're supposed to have written out? (hash: %s)?" % h) 1777 bb.fatal("Can't find a task we're supposed to have written out? (hash: %s tid: %s)?" % (h, tid))
1778 matches = {k : v for k, v in iter(matches.items()) if h not in k} 1778 matches = {k : v for k, v in iter(matches.items()) if h not in k}
1779 if matches: 1779 if matches:
1780 latestmatch = sorted(matches.keys(), key=lambda f: matches[f])[-1] 1780 latestmatch = sorted(matches.keys(), key=lambda f: matches[f])[-1]