lib/oeqa/qemurunner: Use a timeout in select() call

A 0 value to select.select() immediately returns with no timeout. This was
pegging the cpu at 100% for the python process which was bad and may be
contributing to some of the timeout problems.

Profile from -P of a core-image-minimal before:

    97526792 function calls (97525652 primitive calls) in 45.189 seconds

and after:

       50204 function calls (49064 primitive calls) in 17.318 seconds

Saving 97.5 million function calls has to be good :)

(From OE-Core rev: c0551436974d179df23418567f18a082830380f6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2013-09-06 14:14:34 +00:00
parent 457e584e32
commit 9b84fc7cc2
1 changed files with 1 additions and 1 deletions

View File

@ -101,7 +101,7 @@ class QemuRunner:
reachedlogin = False
stopread = False
while time.time() < endtime and not stopread:
sread, swrite, serror = select.select(socklist, [], [], 0)
sread, swrite, serror = select.select(socklist, [], [], 5)
for sock in sread:
if sock is self.server_socket:
self.qemusock, addr = self.server_socket.accept()