]> code.ossystems Code Review - openembedded-core.git/commitdiff
qemurunner.py: add try/except for pid handling race
authorTrevor Gamblin <trevor.gamblin@windriver.com>
Fri, 7 Feb 2020 13:46:52 +0000 (08:46 -0500)
committerArmin Kuster <akuster808@gmail.com>
Fri, 21 Feb 2020 02:58:01 +0000 (18:58 -0800)
In some instances, attempts to remove the qemu pidfile within the
stop() method fail despite the os.path.exists() call immediately
before implying that the file is present. Add a try/except block
to log a warning if this occurs, rather than failing outright,
since the process simply appears to be exiting at an inconvenient
time.

[YOCTO #13675]

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit eadb899e23b18eb9eaff145c3bf5b20fb417c3e8)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
meta/lib/oeqa/utils/qemurunner.py

index fe8b77d97a66c88b60529798bb8288b337b57818..0d63e44ea7f6aa96eff5be03837f42440f37571a 100644 (file)
@@ -396,7 +396,10 @@ class QemuRunner:
         self.qemupid = None
         self.ip = None
         if os.path.exists(self.qemu_pidfile):
-            os.remove(self.qemu_pidfile)
+            try:
+                os.remove(self.qemu_pidfile)
+            except FileNotFoundError as e:
+                self.logger.warning('qemu pidfile is no longer present')
         if self.monitorpipe:
             self.monitorpipe.close()