From 49403368ccf3e469ac111afa259a38cc11e0b688 Mon Sep 17 00:00:00 2001 From: Mark Asselstine Date: Fri, 1 Dec 2017 11:30:12 -0500 Subject: utils: qemurunner.py: Log both 'failed to reach login banner" reasons The current logging always assumes the boot timeout has expired yet there is a second reason we might have ended up in a position where no login banner was found, that being a socket disconnect. Add logging for the disconnect case and make the timeout expiration conditional on the timeout being exhausted. Signed-off-by: Mark Asselstine Signed-off-by: Ross Burton --- meta/lib/oeqa/utils/qemurunner.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'meta/lib/oeqa/utils') diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 8296e989b1..dfcd63eab4 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -307,14 +307,18 @@ class QemuRunner: (time.time() - (endtime - self.boottime), time.strftime("%D %H:%M:%S"))) else: + # no need to check if reachedlogin unless we support multiple connections + self.logger.debug("QEMU socket disconnected before login banner reached. (%s)" % + time.strftime("%D %H:%M:%S")) socklist.remove(sock) sock.close() stopread = True if not reachedlogin: - self.logger.debug("Target didn't reached login boot in %d seconds (%s)" % - (self.boottime, time.strftime("%D %H:%M:%S"))) + if time.time() >= endtime: + self.logger.debug("Target didn't reached login boot in %d seconds (%s)" % + (self.boottime, time.strftime("%D %H:%M:%S"))) tail = lambda l: "\n".join(l.splitlines()[-25:]) # in case bootlog is empty, use tail qemu log store at self.msg lines = tail(bootlog if bootlog else self.msg) -- cgit 1.2.3-korg