summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-08-31 11:37:53 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-09-02 18:09:49 +0100
commit412a26e154fb70473f2d96283f383aebce8f8e5e (patch)
tree2fcfca7934b84b196b3962c1b21581fdb36bd95a /bitbake/lib/bb/runqueue.py
parente7b2b7d40da1b9b9c67e6f5b0f4183800c664ddd (diff)
downloadpoky-412a26e154fb70473f2d96283f383aebce8f8e5e.tar.gz
bitbake: build/runqueue: Add noextra stamp file parameter to fix multiconfig builds
We can't execute the same task for the same package_arch multiple times as the current setup has conflicting directories. Since these would usually have the same stamp/hash, we want to execute in sequence rather than in parallel, so for the purposes of task execution, don't consider the "extra-info" on the stamp files. We need to add a parameter to the stamp function to achieve this. This avoids multiple update-rc.d populate_sysroot tasks executing in parallel and breaking multiconfig builds. (Bitbake rev: a9041fc96a14e718c0c1d1676e705343b9e872d3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index ce30fccd43..e4c97379af 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -137,7 +137,7 @@ class RunQueueScheduler(object):
137 for tid in self.rqdata.runtaskentries: 137 for tid in self.rqdata.runtaskentries:
138 (mc, fn, taskname) = split_tid(tid) 138 (mc, fn, taskname) = split_tid(tid)
139 taskfn = taskfn_fromtid(tid) 139 taskfn = taskfn_fromtid(tid)
140 self.stamps[tid] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn) 140 self.stamps[tid] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True)
141 if tid in self.rq.runq_buildable: 141 if tid in self.rq.runq_buildable:
142 self.buildable.append(tid) 142 self.buildable.append(tid)
143 143
@@ -1805,7 +1805,7 @@ class RunQueueExecuteTasks(RunQueueExecute):
1805 self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata)) + b"</runtask>") 1805 self.rq.worker[mc].process.stdin.write(b"<runtask>" + pickle.dumps((taskfn, task, taskname, False, self.cooker.collection.get_file_appends(taskfn), taskdepdata)) + b"</runtask>")
1806 self.rq.worker[mc].process.stdin.flush() 1806 self.rq.worker[mc].process.stdin.flush()
1807 1807
1808 self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn) 1808 self.build_stamps[task] = bb.build.stampfile(taskname, self.rqdata.dataCaches[mc], taskfn, noextra=True)
1809 self.build_stamps2.append(self.build_stamps[task]) 1809 self.build_stamps2.append(self.build_stamps[task])
1810 self.runq_running.add(task) 1810 self.runq_running.add(task)
1811 self.stats.taskActive() 1811 self.stats.taskActive()