]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
vstart_runner: only kill/look at user's processes
authorPatrick Donnelly <batrick@batbytes.com>
Tue, 7 Jun 2016 20:20:27 +0000 (16:20 -0400)
committerPatrick Donnelly <batrick@batbytes.com>
Tue, 7 Jun 2016 20:38:06 +0000 (16:38 -0400)
This prevents vstart_runner.py from trying to kill other user's
ceph-mds/ceph-fuse instances.

tasks/cephfs/vstart_runner.py

index eb04bf2b2e904f243c5594151a92fc8ea82889c6..5d1b77b2797e7590d8df9d00d0aa517c0bcbab87 100644 (file)
@@ -257,14 +257,14 @@ class LocalDaemon(object):
         Return PID as an integer or None if not found
         """
         ps_txt = self.controller.run(
-            args=["ps", "aux"]
+            args=["ps", "-u"+str(os.getuid())]
         ).stdout.getvalue().strip()
         lines = ps_txt.split("\n")[1:]
 
         for line in lines:
             if line.find("ceph-{0} -i {1}".format(self.daemon_type, self.daemon_id)) != -1:
                 log.info("Found ps line for daemon: {0}".format(line))
-                return int(line.split()[1])
+                return int(line.split()[0])
 
         return None
 
@@ -684,13 +684,13 @@ def exec_test():
 
     # Tolerate no MDSs or clients running at start
     ps_txt = remote.run(
-        args=["ps", "aux"]
+        args=["ps", "-u"+str(os.getuid())]
     ).stdout.getvalue().strip()
     lines = ps_txt.split("\n")[1:]
 
     for line in lines:
         if 'ceph-fuse' in line or 'ceph-mds' in line:
-            pid = int(line.split()[1])
+            pid = int(line.split()[0])
             log.warn("Killing stray process {0}".format(line))
             os.kill(pid, signal.SIGKILL)