summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/runqueue.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 88212ca00c..0c17a23bdc 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -1711,6 +1711,7 @@ class RunQueueExecute:
self.stampcache = {}
self.holdoff_tasks = set()
+ self.holdoff_need_update = True
self.sqdone = False
self.stats = RunQueueStats(len(self.rqdata.runtaskentries))
@@ -2057,6 +2058,8 @@ class RunQueueExecute:
self.rq.state = runQueueComplete
return True
+ self.update_holdofftasks()
+
if self.cooker.configuration.setsceneonly:
task = None
else:
@@ -2194,6 +2197,9 @@ class RunQueueExecute:
return taskdepdata
def update_holdofftasks(self):
+
+ if not self.holdoff_need_update:
+ return
self.holdoff_tasks = set()
for tid in self.rqdata.runq_setscene_tids:
@@ -2205,6 +2211,8 @@ class RunQueueExecute:
if dep not in self.runq_complete:
self.holdoff_tasks.add(dep)
+ self.holdoff_need_update = False
+
def process_possible_migrations(self):
changed = set()
@@ -2324,7 +2332,7 @@ class RunQueueExecute:
self.sqdone = False
if changed:
- self.update_holdofftasks()
+ self.holdoff_need_update = True
def scenequeue_updatecounters(self, task, fail=False):
@@ -2373,7 +2381,7 @@ class RunQueueExecute:
self.tasks_covered = covered
self.tasks_notcovered = notcovered
- self.update_holdofftasks()
+ self.holdoff_need_update = True
def sq_task_completeoutright(self, task):
"""