Patchwork oeqa/utils/qemurunner: use the right kill call so we don't send SIGTERM to bitbake-worker

login
register
mail settings
Submitter Stanacar, StefanX
Date March 11, 2014, 12:11 p.m.
Message ID <1394539868-9054-1-git-send-email-stefanx.stanacar@intel.com>
Download mbox | patch
Permalink /patch/68389/
State Accepted
Commit 678cca4421c1c54f6bdc0d6ef71e99acd789e28a
Headers show

Comments

Stanacar, StefanX - March 11, 2014, 12:11 p.m.
After recent bitbake-worker changes [1] this was killing the bitbake-worker,
which isn't what we want and kill(-pid) was the wrong call anyway.

runqemu.pid is the right PGID as the process was started with preexec_fn=setpgrp
(so no need to do os.getpgid(self.runqemu.pid))

[1] http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=15688798520896690561824b2fdc227c8a365c82

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
---
 meta/lib/oeqa/utils/qemurunner.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Patch

diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py
index c664d00..f1a7e24 100644
--- a/meta/lib/oeqa/utils/qemurunner.py
+++ b/meta/lib/oeqa/utils/qemurunner.py
@@ -162,13 +162,13 @@  class QemuRunner:
 
         if self.runqemu:
             bb.note("Sending SIGTERM to runqemu")
-            os.kill(-self.runqemu.pid,signal.SIGTERM)
+            os.killpg(self.runqemu.pid, signal.SIGTERM)
             endtime = time.time() + self.runqemutime
             while self.runqemu.poll() is None and time.time() < endtime:
                 time.sleep(1)
             if self.runqemu.poll() is None:
                 bb.note("Sending SIGKILL to runqemu")
-                os.kill(-self.runqemu.pid,signal.SIGKILL)
+                os.killpg(self.runqemu.pid, signal.SIGKILL)
             self.runqemu = None
         if self.server_socket:
             self.server_socket.close()