aboutsummaryrefslogtreecommitdiffstats
path: root/lib/bb/fetch2/gitsm.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2022-11-21 13:10:19 +0000
committerSteve Sakoman <steve@sakoman.com>2022-11-22 09:21:04 -1000
commit72a3afd99e8b785cb2a2f687e71a58e08cdd9c74 (patch)
treed6e5fef8bc5ce6d22c82cb14304ca3d46c766ba4 /lib/bb/fetch2/gitsm.py
parentc90d57497b9bcd237c3ae810ee8edb5b0d2d575a (diff)
downloadbitbake-72a3afd99e8b785cb2a2f687e71a58e08cdd9c74.tar.gz
runqueue: Fix race issues around hash equivalence and sstate reuse
We identified a use case where a native recipe (autoconf-native) was rebuilt with no change in output yet the sstate for do_package tasks wasn't being used. The issue is that do_package tasks have a hard dependency on pseudo-native:do_populate_sysroot. That task was one of the many tasks being rehashed when autoconf-native's hash was changed. If update_tasks processed a recipe before it had processed pseudo-native, that recipe would be marked as not possible from sstate and would run the full tasks. The fix is to split the processing into two passes, first to handle the existing covered/notcovered updates, then in the second pass, check whether there are "harddep" issues. This defers the do_package tasks until after pseudo-native is installed from sstate as expected and everything works well again. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit e479d1e418a7d34f0a4663b4a0e22bb11503c8ab) Signed-off-by: Steve Sakoman <steve@sakoman.com>
Diffstat (limited to 'lib/bb/fetch2/gitsm.py')
0 files changed, 0 insertions, 0 deletions