diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-07-03 16:11:02 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-07-15 10:28:12 +0100 |
commit | cfb7312b72b7bfaec05ca6b6ed0735473b2724a7 (patch) | |
tree | 3f77f44b3e83aa717848027bef23d493e28ba558 /bitbake/lib | |
parent | dd7f09f471f19b8a03d62ff3a9a48a3173c2458f (diff) | |
download | openembedded-core-contrib-cfb7312b72b7bfaec05ca6b6ed0735473b2724a7.tar.gz |
bitbake: runqueue: Merge stats handling together for setscene/real tasks
Use a seperate stats class for scenequeue tasks and move the setup
into the base class. Update references accordingly.
(Bitbake rev: 32f39bbd5d3b7394689da9ba05be2c15b4523b27)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 5832db4ae5..3cc804de45 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -1748,6 +1748,9 @@ class RunQueueExecute: self.stampcache = {} + self.stats = RunQueueStats(len(self.rqdata.runtaskentries)) + self.sq_stats = RunQueueStats(len(self.rqdata.runq_setscene_tids)) + for mc in rq.worker: rq.worker[mc].pipe.setrunqueueexec(self) for mc in rq.fakeworker: @@ -1802,8 +1805,9 @@ class RunQueueExecute: def finish(self): self.rq.state = runQueueCleanUp - if self.stats.active > 0: - bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData) + active = self.stats.active + self.sq_stats.active + if active > 0: + bb.event.fire(runQueueExitWait(active), self.cfgData) self.rq.read_workers() return self.rq.active_fds() @@ -1831,7 +1835,8 @@ class RunQueueExecute: return valid def can_start_task(self): - can_start = self.stats.active < self.number_tasks + active = self.stats.active + self.sq_stats.active + can_start = active < self.number_tasks return can_start class RunQueueExecuteDummy(RunQueueExecute): @@ -1847,8 +1852,6 @@ class RunQueueExecuteTasks(RunQueueExecute): def __init__(self, rq): RunQueueExecute.__init__(self, rq) - self.stats = RunQueueStats(len(self.rqdata.runtaskentries)) - self.stampcache = {} # Mark initial buildable tasks @@ -2358,8 +2361,6 @@ class RunQueueExecuteScenequeue(RunQueueExecute): rq.state = runQueueRunInit return - self.stats = RunQueueStats(len(self.rqdata.runq_setscene_tids)) - self.sqdata = SQData() build_scenequeue_data(self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self) @@ -2401,13 +2402,13 @@ class RunQueueExecuteScenequeue(RunQueueExecute): self.rq.state = runQueueCleanUp def sq_task_complete(self, task): - self.stats.taskCompleted() - bb.event.fire(sceneQueueTaskCompleted(task, self.stats, self.rq), self.cfgData) + self.sq_stats.taskCompleted() + bb.event.fire(sceneQueueTaskCompleted(task, self.sq_stats, self.rq), self.cfgData) self.sq_task_completeoutright(task) def sq_task_fail(self, task, result): - self.stats.taskFailed() - bb.event.fire(sceneQueueTaskFailed(task, self.stats, result, self), self.cfgData) + self.sq_stats.taskFailed() + bb.event.fire(sceneQueueTaskFailed(task, self.sq_stats, result, self), self.cfgData) self.scenequeue_notcovered.add(task) self.scenequeue_updatecounters(task, True) self.sq_check_taskfail(task) @@ -2415,8 +2416,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute): def sq_task_failoutright(self, task): self.sq_running.add(task) self.sq_buildable.add(task) - self.stats.taskSkipped() - self.stats.taskCompleted() + self.sq_stats.taskSkipped() + self.sq_stats.taskCompleted() self.scenequeue_notcovered.add(task) self.scenequeue_updatecounters(task, True) @@ -2424,8 +2425,8 @@ class RunQueueExecuteScenequeue(RunQueueExecute): self.sq_running.add(task) self.sq_buildable.add(task) self.sq_task_completeoutright(task) - self.stats.taskSkipped() - self.stats.taskCompleted() + self.sq_stats.taskSkipped() + self.sq_stats.taskCompleted() def sq_execute(self): """ @@ -2480,7 +2481,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): self.sq_task_failoutright(task) return True - startevent = sceneQueueTaskStarted(task, self.stats, self.rq) + startevent = sceneQueueTaskStarted(task, self.sq_stats, self.rq) bb.event.fire(startevent, self.cfgData) taskdepdata = self.sq_build_taskdepdata(task) @@ -2501,11 +2502,11 @@ class RunQueueExecuteScenequeue(RunQueueExecute): self.build_stamps2.append(self.build_stamps[task]) self.sq_running.add(task) self.sq_live.add(task) - self.stats.taskActive() + self.sq_stats.taskActive() if self.can_start_task(): return True - if self.stats.active > 0: + if self.sq_stats.active > 0: self.rq.read_workers() return self.rq.active_fds() @@ -2522,7 +2523,7 @@ class RunQueueExecuteScenequeue(RunQueueExecute): self.rq.state = runQueueRunInit - completeevent = sceneQueueComplete(self.stats, self.rq) + completeevent = sceneQueueComplete(self.sq_stats, self.rq) bb.event.fire(completeevent, self.cfgData) return True |