summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/lib/oeqa/utils/qemurunner.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py
index cda43aad8c..f1c2d2b5c9 100644
--- a/meta/lib/oeqa/utils/qemurunner.py
+++ b/meta/lib/oeqa/utils/qemurunner.py
@@ -519,7 +519,6 @@ class QemuRunner:
519 except Exception as e: 519 except Exception as e:
520 self.logger.warning('Extra log data exception %s' % repr(e)) 520 self.logger.warning('Extra log data exception %s' % repr(e))
521 data = None 521 data = None
522 self.thread.serial_lock.release()
523 return False 522 return False
524 523
525 with self.thread.serial_lock: 524 with self.thread.serial_lock:
@@ -822,10 +821,12 @@ class LoggingThread(threading.Thread):
822 self.logfunc(data, ".stdout") 821 self.logfunc(data, ".stdout")
823 elif self.serialsock and self.serialsock.fileno() == fd: 822 elif self.serialsock and self.serialsock.fileno() == fd:
824 if self.serial_lock.acquire(blocking=False): 823 if self.serial_lock.acquire(blocking=False):
825 data = self.recv(1024, self.serialsock) 824 try:
826 self.logger.debug("Data received serial thread %s" % data.decode('utf-8', 'replace')) 825 data = self.recv(1024, self.serialsock)
827 self.logfunc(data, ".2") 826 self.logger.debug("Data received serial thread %s" % data.decode('utf-8', 'replace'))
828 self.serial_lock.release() 827 self.logfunc(data, ".2")
828 finally:
829 self.serial_lock.release()
829 else: 830 else:
830 serial_registered = False 831 serial_registered = False
831 poll.unregister(self.serialsock.fileno()) 832 poll.unregister(self.serialsock.fileno())