From: Aníbal Limón Date: Tue, 22 Sep 2015 16:56:22 +0000 (-0500) Subject: oeqa/utils/qemurunner.py: Fix HIGH CPU usage on LoggingThread X-Git-Tag: 2015-10~308 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=7b6c9b6327638c9731cea80a52d30d4a8fb6e081;p=openembedded-core.git oeqa/utils/qemurunner.py: Fix HIGH CPU usage on LoggingThread LoggingThread is used for receive console output from QEMU over TCP, so add filter to only wake poll on read events, also change the event mask variable name to be more descriptive. This fixes HIGH CPU consume caused by wake on ready to write events. Signed-off-by: Aníbal Limón Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index d32c9db46d..6edd37477e 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -440,9 +440,9 @@ class LoggingThread(threading.Thread): def eventloop(self): poll = select.poll() - eventmask = self.errorevents | self.readevents + event_read_mask = self.errorevents | self.readevents poll.register(self.serversock.fileno()) - poll.register(self.readpipe, eventmask) + poll.register(self.readpipe, event_read_mask) breakout = False self.running = True @@ -466,7 +466,7 @@ class LoggingThread(threading.Thread): self.readsock, _ = self.serversock.accept() self.readsock.setblocking(0) poll.unregister(self.serversock.fileno()) - poll.register(self.readsock.fileno()) + poll.register(self.readsock.fileno(), event_read_mask) self.logger.info("Setting connection established event") self.connection_established.set()