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.

(From OE-Core rev: 7b6c9b6327638c9731cea80a52d30d4a8fb6e081)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Aníbal Limón
2015-09-22 11:56:22 -05:00
committed by Richard Purdie
parent 6c0066c145
commit 376ce717bd

View File

@@ -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()