From 441146001650959ea327e6eb9e6d93ccd669a8d8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 10 Oct 2023 14:31:20 +0100 Subject: oeqa/qemurunner: Ensure we retry after BrokenPipeError If the BrokenPipeError occurs when writing to the serial port to wake it up, defer the write and try again (which will happen on the 5s timeout of the select call). Why it should return ESHUTDOWN and then work later I'm not sure but it does appear to make it work. For now we need 'working' QA tests whilst the issue is debugged. (From OE-Core rev: ea9e6ba0ab31a0b20012c283aa768496a50b527a) Signed-off-by: Richard Purdie --- meta/lib/oeqa/utils/qemurunner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'meta/lib/oeqa/utils') diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index cb3231da63..a52fa41768 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -465,9 +465,9 @@ class QemuRunner: self.logger.warning('Probing the serial port to wake it up!') try: self.server_socket.sendall(bytes("\n\n", "utf-8")) + sentnewlines = True except BrokenPipeError as e: self.logger.debug('Probe failed %s' % repr(e)) - sentnewlines = True for file in sread: if file is self.server_socket: qemusock, addr = self.server_socket.accept() -- cgit v1.2.3-54-g00ecf