summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2022-06-01 18:08:20 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-06-02 12:28:21 +0100
commit3664efc86a020d782f43eda540872fca07293823 (patch)
treecdfe76cd9abde852de01638028b6c5d582166423 /bitbake
parentc6785c78e672843bfec7132a266ed269387c9646 (diff)
downloadpoky-3664efc86a020d782f43eda540872fca07293823.tar.gz
bitbake: runqueue: Fix unihash cache mismatch issues
Very occasionally we see errors in eSDK testing on the autobuilder where the task hashes in the eSDK don't match what was just built. I was able to inspect one of these build directories and noticed that the bb_unihashes.dat file in the eSDK was zero sized. Whilst inspecting the code to understand the cause, I noticed that updated hashes are not saved out in subsequent updates of the values in the rehash process. Add a missing sync call to ensure this happens. (Bitbake rev: 7912dabbcf444a3c3d971cca4a944a8b931e301b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/runqueue.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index f34f1568e2..1e47fe70ef 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -2299,6 +2299,9 @@ class RunQueueExecute:
2299 self.rqdata.runtaskentries[hashtid].unihash = unihash 2299 self.rqdata.runtaskentries[hashtid].unihash = unihash
2300 bb.parse.siggen.set_unihash(hashtid, unihash) 2300 bb.parse.siggen.set_unihash(hashtid, unihash)
2301 toprocess.add(hashtid) 2301 toprocess.add(hashtid)
2302 if torehash:
2303 # Need to save after set_unihash above
2304 bb.parse.siggen.save_unitaskhashes()
2302 2305
2303 # Work out all tasks which depend upon these 2306 # Work out all tasks which depend upon these
2304 total = set() 2307 total = set()