From c6918b62fd59e6d03c989b6c1546b895cfca05b4 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 19 Jun 2015 12:25:45 +0100 Subject: bitbake: runqueue: Improve handling of fakeworker failing to start Currently if the fakeworker failes to start the output from bitbake is confusing. Improve the error handling to give a clear indication of what failed. Patch from Chris Larson. (Bitbake rev: ad286d6fed7a580bec36a92c7b7e205322ac407b) Signed-off-by: Richard Purdie --- bitbake/lib/bb/runqueue.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'bitbake/lib/bb/runqueue.py') diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 7ec3ab8fa8..f1155f8f45 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py @@ -1570,7 +1570,12 @@ class RunQueueExecuteTasks(RunQueueExecute): taskdep = self.rqdata.dataCache.task_deps[fn] if 'fakeroot' in taskdep and taskname in taskdep['fakeroot'] and not self.cooker.configuration.dry_run: if not self.rq.fakeworker: - self.rq.start_fakeworker(self) + try: + self.rq.start_fakeworker(self) + except OSError as exc: + logger.critical("Failed to spawn fakeroot worker to run %s:%s: %s" % (fn, taskname, str(exc))) + self.rq.state = runQueueFailed + return True self.rq.fakeworker.stdin.write("" + pickle.dumps((fn, task, taskname, False, self.cooker.collection.get_file_appends(fn), taskdepdata)) + "") self.rq.fakeworker.stdin.flush() else: -- cgit v1.2.3-54-g00ecf