[oe-commits] [bitbake] 12/24: runqueue: Add covered_tasks (or 'collated_deps') to scenequeue data

git at git.openembedded.org git at git.openembedded.org
Thu Jul 11 11:33:05 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository bitbake.

commit 1f47f3ca029662adcff931fc14fba670f148d65d
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Sat Jul 6 14:16:12 2019 +0100

    runqueue: Add covered_tasks (or 'collated_deps') to scenequeue data
    
    Its useful to have a list of all the tasks a given setscene task covers
    and we can easily generate this data whilst doing other data processing.
    
    This is used in later changes to runqueue rather than trying to compute it
    on the fly which is difficult.
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 lib/bb/runqueue.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 3cf8aed..c06e419 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -2291,6 +2291,7 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
     sq_revdeps = {}
     sq_revdeps_new = {}
     sq_revdeps_squash = {}
+    sq_collated_deps = {}
 
     # We need to construct a dependency graph for the setscene functions. Intermediate
     # dependencies between the setscene tasks only complicate the code. This code
@@ -2312,6 +2313,7 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
 
     # Secondly process the chains between setscene tasks.
     for tid in rqdata.runq_setscene_tids:
+        sq_collated_deps[tid] = set()
         #bb.warn("Added endpoint 2 %s" % (tid))
         for dep in rqdata.runtaskentries[tid].depends:
                 if tid in sq_revdeps[dep]:
@@ -2331,6 +2333,9 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
                 tasks |= task
             if sq_revdeps_new[point]:
                 tasks |= sq_revdeps_new[point]
+            if point not in rqdata.runq_setscene_tids:
+                for t in tasks:
+                    sq_collated_deps[t].add(point)
             sq_revdeps_new[point] = set()
             if point in rqdata.runq_setscene_tids:
                 sq_revdeps_new[point] = tasks
@@ -2442,6 +2447,7 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
 
     sqdata.sq_revdeps = sq_revdeps_squash
     sqdata.sq_revdeps2 = copy.deepcopy(sqdata.sq_revdeps)
+    sqdata.sq_covered_tasks = sq_collated_deps
 
     for tid in sqdata.sq_revdeps:
         sqdata.sq_deps[tid] = set()

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list