diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-12-08 16:38:14 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-12-31 10:09:51 +0000 |
commit | dca5d82830ef2838439e5272da9dac1f28954cf1 (patch) | |
tree | 7c511fc0902aaf1f38217be8e064a9e50d6de4d6 | |
parent | 926235aad806232bc73e33d6dd8955dd26562e6b (diff) | |
download | bitbake-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.py | 9 |
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: |