1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-01 00:59:48 +00:00

bitbake: runqueue: Clarify scenequeue_covered vs. tasks_covered

It wasn't clear whether the variable contained just setscene covered
tasks or all covered tasks. We need both sets of data so lets just have
two clearly named variables.

(Bitbake rev: a9fb55627762e7c8b3df30b335ad0b2f1adc080e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2019-07-03 23:12:19 +01:00
parent 4a1cb07df2
commit 491c6049e0
+12 -8
View File
@@ -1693,7 +1693,7 @@ def process_setscene_whitelist(rq, rqdata, stampcache, sched, rqex):
def check_norun_task(tid, showerror=False): def check_norun_task(tid, showerror=False):
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid) (mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
# Ignore covered tasks # Ignore covered tasks
if tid in rqex.scenequeue_covered: if tid in rqex.tasks_covered:
return False return False
# Ignore stamped tasks # Ignore stamped tasks
if rq.check_stamp_task(tid, taskname, cache=stampcache): if rq.check_stamp_task(tid, taskname, cache=stampcache):
@@ -1768,7 +1768,10 @@ class RunQueueExecute:
if self.number_tasks <= 0: if self.number_tasks <= 0:
bb.fatal("Invalid BB_NUMBER_THREADS %s" % self.number_tasks) bb.fatal("Invalid BB_NUMBER_THREADS %s" % self.number_tasks)
# List of setscene tasks which we've covered
self.scenequeue_covered = set() self.scenequeue_covered = set()
# List of tasks which are covered (including setscene ones)
self.tasks_covered = set()
self.scenequeue_notcovered = set() self.scenequeue_notcovered = set()
self.scenequeue_notneeded = set() self.scenequeue_notneeded = set()
@@ -1958,7 +1961,7 @@ class RunQueueExecute:
if task is not None: if task is not None:
(mc, fn, taskname, taskfn) = split_tid_mcfn(task) (mc, fn, taskname, taskfn) = split_tid_mcfn(task)
if task in self.scenequeue_covered: if task in self.tasks_covered:
logger.debug(2, "Setscene covered task %s", task) logger.debug(2, "Setscene covered task %s", task)
self.task_skip(task, "covered") self.task_skip(task, "covered")
return True return True
@@ -2089,6 +2092,7 @@ class RunQueueExecute:
logger.debug(1, 'Found task %s which could be accelerated', task) logger.debug(1, 'Found task %s which could be accelerated', task)
self.scenequeue_covered.add(task) self.scenequeue_covered.add(task)
self.tasks_covered.add(task)
self.scenequeue_updatecounters(task) self.scenequeue_updatecounters(task)
def sq_check_taskfail(self, task): def sq_check_taskfail(self, task):
@@ -2500,24 +2504,24 @@ def start_runqueue_tasks(rqexec):
for tid in rqexec.rqdata.runtaskentries: for tid in rqexec.rqdata.runtaskentries:
if len(rqexec.rqdata.runtaskentries[tid].depends) == 0: if len(rqexec.rqdata.runtaskentries[tid].depends) == 0:
rqexec.setbuildable(tid) rqexec.setbuildable(tid)
if len(rqexec.rqdata.runtaskentries[tid].revdeps) > 0 and rqexec.rqdata.runtaskentries[tid].revdeps.issubset(rqexec.scenequeue_covered): if len(rqexec.rqdata.runtaskentries[tid].revdeps) > 0 and rqexec.rqdata.runtaskentries[tid].revdeps.issubset(rqexec.tasks_covered):
rqexec.scenequeue_covered.add(tid) rqexec.tasks_covered.add(tid)
found = True found = True
while found: while found:
found = False found = False
for tid in rqexec.rqdata.runtaskentries: for tid in rqexec.rqdata.runtaskentries:
if tid in rqexec.scenequeue_covered: if tid in rqexec.tasks_covered:
continue continue
logger.debug(1, 'Considering %s: %s' % (tid, str(rqexec.rqdata.runtaskentries[tid].revdeps))) logger.debug(1, 'Considering %s: %s' % (tid, str(rqexec.rqdata.runtaskentries[tid].revdeps)))
if len(rqexec.rqdata.runtaskentries[tid].revdeps) > 0 and rqexec.rqdata.runtaskentries[tid].revdeps.issubset(rqexec.scenequeue_covered): if len(rqexec.rqdata.runtaskentries[tid].revdeps) > 0 and rqexec.rqdata.runtaskentries[tid].revdeps.issubset(rqexec.tasks_covered):
if tid in rqexec.scenequeue_notcovered: if tid in rqexec.scenequeue_notcovered:
continue continue
found = True found = True
rqexec.scenequeue_covered.add(tid) rqexec.tasks_covered.add(tid)
logger.debug(1, 'Skip list %s', sorted(rqexec.scenequeue_covered)) logger.debug(1, 'Skip list %s', sorted(rqexec.tasks_covered))
for task in self.rq.scenequeue_notcovered: for task in self.rq.scenequeue_notcovered:
logger.debug(1, 'Not skipping task %s', task) logger.debug(1, 'Not skipping task %s', task)