From 9b84fc7cc2a9100685e78a5fe051b3a7be5a540a Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 6 Sep 2013 14:14:34 +0000 Subject: [PATCH] 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 --- meta/lib/oeqa/utils/qemurunner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index e7bd8b147b..b5c757a927 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -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()