summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2019-12-13 16:07:28 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-12-16 23:27:14 +0000
commit884463c8d1518d6bf1884e9526b4a50384290fe7 (patch)
tree538be6559af8c48b67d406a2c937f523ef139d25 /bitbake/lib/bb/runqueue.py
parent73896a7a0e0b7fa1c6ee8a72940aefdba641ea5e (diff)
downloadpoky-884463c8d1518d6bf1884e9526b4a50384290fe7.tar.gz
bitbake: siggen: Split get_tashhash for performance
There are two operations happening in get_taskhash, the building of the underlying data and the calculation of the hash. Split these into two funtions since the preparation part doesn't need to rerun when unihash changes, only the calculation does. This split allows sigificant performance improvements for hashequiv in builds where many hashes are equivalent and many hashes are changing. (Bitbake rev: 6a32af2808d748819f4af55c443578c8a63062b3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index b3648ddb54..515e9d4314 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -1185,6 +1185,7 @@ class RunQueueData:
1185 procdep = [] 1185 procdep = []
1186 for dep in self.runtaskentries[tid].depends: 1186 for dep in self.runtaskentries[tid].depends:
1187 procdep.append(dep) 1187 procdep.append(dep)
1188 bb.parse.siggen.prep_taskhash(tid, procdep, self.dataCaches[mc_from_tid(tid)])
1188 self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, procdep, self.dataCaches[mc_from_tid(tid)]) 1189 self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, procdep, self.dataCaches[mc_from_tid(tid)])
1189 self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid) 1190 self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid)
1190 1191