summaryrefslogtreecommitdiffstats
path: root/bitbake
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:10:21 +0000
commitfa34c42d192927345f8c6010bb8feb5ef12c73c5 (patch)
tree0b2e3bbb41d079711d2e3daee97c32e5b0d2a67f /bitbake
parent942e35d65167a6073afb68a6d2598e5241680a5e (diff)
downloadpoky-fa34c42d192927345f8c6010bb8feb5ef12c73c5.tar.gz
bitbake: 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. (Bitbake rev: dca5d82830ef2838439e5272da9dac1f28954cf1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/runqueue.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index 6d9cf3f4df..90c610695f 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -1064,7 +1064,7 @@ class RunQueue:
1064 retval = self.rqexe.execute() 1064 retval = self.rqexe.execute()
1065 1065
1066 if self.state is runQueueCleanUp: 1066 if self.state is runQueueCleanUp:
1067 self.rqexe.finish() 1067 retval = self.rqexe.finish()
1068 1068
1069 if (self.state is runQueueComplete or self.state is runQueueFailed) and self.rqexe: 1069 if (self.state is runQueueComplete or self.state is runQueueFailed) and self.rqexe:
1070 self.teardown_workers() 1070 self.teardown_workers()
@@ -1306,15 +1306,14 @@ class RunQueueExecute:
1306 if self.stats.active > 0: 1306 if self.stats.active > 0:
1307 bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData) 1307 bb.event.fire(runQueueExitWait(self.stats.active), self.cfgData)
1308 self.rq.read_workers() 1308 self.rq.read_workers()
1309 1309 return self.rq.active_fds()
1310 return
1311 1310
1312 if len(self.failed_fnids) != 0: 1311 if len(self.failed_fnids) != 0:
1313 self.rq.state = runQueueFailed 1312 self.rq.state = runQueueFailed
1314 return 1313 return True
1315 1314
1316 self.rq.state = runQueueComplete 1315 self.rq.state = runQueueComplete
1317 return 1316 return True
1318 1317
1319 def check_dependencies(self, task, taskdeps, setscene = False): 1318 def check_dependencies(self, task, taskdeps, setscene = False):
1320 if not self.rq.depvalidate: 1319 if not self.rq.depvalidate: