summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-12-08 16:38:14 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-12-31 10:09:51 +0000
commitdca5d82830ef2838439e5272da9dac1f28954cf1 (patch)
tree7c511fc0902aaf1f38217be8e064a9e50d6de4d6
parent926235aad806232bc73e33d6dd8955dd26562e6b (diff)
downloadbitbake-dca5d82830ef2838439e5272da9dac1f28954cf1.tar.gz
runqueue: Fix 100% cpu use after keyboard interrupt
After Ctrl+C is pressed to interrupt bitbake, it loops continually, running at 100% cpu. This patch selects on the correct file descriptors resolving the excess cpu usage. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/runqueue.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 6d9cf3f4d..90c610695 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -1064,7 +1064,7 @@ class RunQueue:
retval = self.rqexe.execute()
if self.state is runQueueCleanUp:
- self.rqexe.finish()
+ retval = self.rqexe.finish()
if (self.state is runQueueComplete or self.state is runQueueFailed) and self.rqexe:
self.teardown_workers()
@@ -1306,15 +1306,14 @@ class RunQueueExecute:
if self.stats.active > 0:
bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData)
self.rq.read_workers()
-
- return
+ return self.rq.active_fds()
if len(self.failed_fnids) != 0:
self.rq.state = runQueueFailed
- return
+ return True
self.rq.state = runQueueComplete
- return
+ return True
def check_dependencies(self, task, taskdeps, setscene = False):
if not self.rq.depvalidate: