From c77b57e2fa8a4cf90543038fe1939f6ca9b12bd1 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 4 Sep 2015 16:59:38 +0100 Subject: oeqa: Test failure/cleanup improvements Currently, if qemu segfaults, the tests merrily continue trying to execute which takes time for them to timeout and is a bit silly. Worse, no logs about the segfault are shown to the user, its silent! This patch tries to unravel the tangled web of issues and ensures that we: * install a SIGCHLD handler which tells the user qemu exited * check if qemu is running, if it isn't fail the test outright * don't leave processes behind in sshcontrol which would hold bitbake.lock and block shutdown (From OE-Core rev: 77e9363feba53b72429154be5713c46b007ae0a4) Signed-off-by: Richard Purdie --- meta/lib/oeqa/utils/qemurunner.py | 1 + 1 file changed, 1 insertion(+) (limited to 'meta/lib/oeqa/utils/qemurunner.py') diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 78acb41276..d32c9db46d 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -280,6 +280,7 @@ class QemuRunner: self.server_socket = None self.qemupid = None self.ip = None + signal.signal(signal.SIGCHLD, self.origchldhandler) def stop_thread(self): if self.thread and self.thread.is_alive(): -- cgit 1.2.3-korg