From cafe65d8cf7544edbd387f7f5f6d77c64c6b18fa Mon Sep 17 00:00:00 2001 From: Mikko Rapeli Date: Thu, 9 Feb 2023 10:09:33 +0200 Subject: oeqa qemurunner: read more data at a time from serial Use a short sleep to bundle serial console reads so that we are not reading one character at a time which reduces busy looping. Signed-off-by: Mikko Rapeli Signed-off-by: Luca Ceresoli --- meta/lib/oeqa/utils/qemurunner.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 8b893601d4..2e054447fc 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -202,7 +202,7 @@ class QemuRunner: qmp_file = "." + next(tempfile._get_candidate_names()) qmp_param = ' -S -qmp unix:./%s,server,wait' % (qmp_file) qmp_port = self.tmpdir + "/" + qmp_file - # Create a second socket connection for debugging use, + # Create a second socket connection for debugging use, # note this will NOT cause qemu to block waiting for the connection qmp_file2 = "." + next(tempfile._get_candidate_names()) qmp_param += ' -qmp unix:./%s,server,nowait' % (qmp_file2) @@ -468,6 +468,8 @@ class QemuRunner: socklist.remove(self.server_socket) self.logger.debug("Connection from %s:%s" % addr) else: + # try to avoid reading only a single character at a time + time.sleep(0.1) data = data + sock.recv(1024) if data: bootlog += data -- cgit 1.2.3-korg