diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-09-13 04:26:31 -1000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-09-16 17:52:26 +0100 |
commit | 81a6f490dd1f5f669c75cd2ceb1105ce7a09c6e4 (patch) | |
tree | 5cb15fa1d81a23835518bf624eae01c6009e5bbe | |
parent | 7d3b766ef26361c44abc2b8175bc5c44e29c3955 (diff) | |
download | bitbake-81a6f490dd1f5f669c75cd2ceb1105ce7a09c6e4.tar.gz |
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7912dabbcf444a3c3d971cca4a944a8b931e301b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/runqueue.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py index 7eea72e66..111dc0ee7 100644 --- a/lib/bb/runqueue.py +++ b/lib/bb/runqueue.py @@ -2381,6 +2381,9 @@ class RunQueueExecute: self.rqdata.runtaskentries[hashtid].unihash = unihash bb.parse.siggen.set_unihash(hashtid, unihash) toprocess.add(hashtid) + if torehash: + # Need to save after set_unihash above + bb.parse.siggen.save_unitaskhashes() # Work out all tasks which depend upon these total = set() |