diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-12-28 13:53:22 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-12-29 00:05:45 +0000 |
commit | 6549f58cd6e22b4c345212237e81e68e12dfcb61 (patch) | |
tree | 6f836cd053bda6acc72941380987f4734228795b /bitbake/lib/bb | |
parent | 34fa9f08407b5ee711e0184a0efa2030c2592bf0 (diff) | |
download | poky-6549f58cd6e22b4c345212237e81e68e12dfcb61.tar.gz |
bitbake: cache/siggen: Fix cache issues with signature handling
There is a bug in the current cache code where the restored data structures
were "inverted" leading to some very weird issues, not sure how anything worked
like that, this patch fixes it.
Also fix some issues with multiconfig cache ordering problems by resetting
the stream counters when appropriate.
(Bitbake rev: cd06beb948eff5eaf2d474f5b127d51a61b0b2ef)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/cache.py | 3 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py index f5b527ba6a..3fc097241a 100644 --- a/bitbake/lib/bb/cache.py +++ b/bitbake/lib/bb/cache.py | |||
@@ -311,7 +311,7 @@ class SiggenRecipeInfo(RecipeInfoCommon): | |||
311 | cls.restore_map[pid] = {} | 311 | cls.restore_map[pid] = {} |
312 | cls.restore_count[pid] = 1 | 312 | cls.restore_count[pid] = 1 |
313 | map = cls.restore_map[pid] | 313 | map = cls.restore_map[pid] |
314 | for fs, dep, mapnum in deps: | 314 | for dep, fs, mapnum in deps: |
315 | if mapnum: | 315 | if mapnum: |
316 | ret[dep] = map[mapnum] | 316 | ret[dep] = map[mapnum] |
317 | else: | 317 | else: |
@@ -759,6 +759,7 @@ class MulticonfigCache(Mapping): | |||
759 | loaded = 0 | 759 | loaded = 0 |
760 | 760 | ||
761 | for c in self.__caches.values(): | 761 | for c in self.__caches.values(): |
762 | SiggenRecipeInfo.reset() | ||
762 | loaded += c.prepare_cache(progress) | 763 | loaded += c.prepare_cache(progress) |
763 | previous_progress = current_progress | 764 | previous_progress = current_progress |
764 | 765 | ||
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 48c3002ce3..b81f8e0c59 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -2226,6 +2226,7 @@ class CookerParser(object): | |||
2226 | 2226 | ||
2227 | def sync_caches(): | 2227 | def sync_caches(): |
2228 | for c in self.bb_caches.values(): | 2228 | for c in self.bb_caches.values(): |
2229 | bb.cache.SiggenRecipeInfo.reset() | ||
2229 | c.sync() | 2230 | c.sync() |
2230 | 2231 | ||
2231 | self.syncthread = threading.Thread(target=sync_caches, name="SyncThread") | 2232 | self.syncthread = threading.Thread(target=sync_caches, name="SyncThread") |