diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-13 11:45:03 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-23 11:43:29 +0100 |
commit | 75c6b781fc42375a33c5ef263e42b38a5360aa0b (patch) | |
tree | 353b41c2a458087007cfa3da8ce90df70ec43864 | |
parent | d8ef08c96b12645f44f4c24b3264f2b2ee40161c (diff) | |
download | poky-75c6b781fc42375a33c5ef263e42b38a5360aa0b.tar.gz |
bitbake: runqueue: Fix task weighting algorithm
When looking at a list of tasks, do_patch and do_unpack were being
given equal priority when one clearly depends on another. The
reason for this was the default task weights of 0 being to tasks.
This is therefore changed to 1 to allow correct weighting of dependencies
which means the scheduler has better information available to it about
tasks.
Weight endpoints differently (10) for clearer debugging of priorities.
(Bitbake rev: 12dc1d17fac3e8ec420fcafb06186d32fd847d89)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 274ccf2673..6ca693d21c 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
@@ -370,11 +370,11 @@ class RunQueueData: | |||
370 | 370 | ||
371 | for listid in xrange(numTasks): | 371 | for listid in xrange(numTasks): |
372 | task_done.append(False) | 372 | task_done.append(False) |
373 | weight.append(0) | 373 | weight.append(1) |
374 | deps_left.append(len(self.runq_revdeps[listid])) | 374 | deps_left.append(len(self.runq_revdeps[listid])) |
375 | 375 | ||
376 | for listid in endpoints: | 376 | for listid in endpoints: |
377 | weight[listid] = 1 | 377 | weight[listid] = 10 |
378 | task_done[listid] = True | 378 | task_done[listid] = True |
379 | 379 | ||
380 | while True: | 380 | while True: |