perf evsel: Adopt find_process()
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 20 Jun 2017 15:05:38 +0000 (12:05 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 20 Jun 2017 15:05:38 +0000 (12:05 -0300)
And make it static, nobody else uses it, if we ever need it in more
places we can carve a new source file for process related methods,
for now lets reduce util.{c,h} a tad more.

Link: http://lkml.kernel.org/n/tip-zgb28rllvypjibw52aaz9p15@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/evsel.c
tools/perf/util/util.c
tools/perf/util/util.h

index 7f78f27..6f4882f 100644 (file)
@@ -11,6 +11,7 @@
 #include <errno.h>
 #include <inttypes.h>
 #include <linux/bitops.h>
+#include <api/fs/fs.h>
 #include <api/fs/tracing_path.h>
 #include <traceevent/event-parse.h>
 #include <linux/hw_breakpoint.h>
@@ -19,6 +20,8 @@
 #include <linux/err.h>
 #include <sys/ioctl.h>
 #include <sys/resource.h>
+#include <sys/types.h>
+#include <dirent.h>
 #include "asm/bug.h"
 #include "callchain.h"
 #include "cgroup.h"
@@ -2472,6 +2475,42 @@ bool perf_evsel__fallback(struct perf_evsel *evsel, int err,
        return false;
 }
 
+static bool find_process(const char *name)
+{
+       size_t len = strlen(name);
+       DIR *dir;
+       struct dirent *d;
+       int ret = -1;
+
+       dir = opendir(procfs__mountpoint());
+       if (!dir)
+               return false;
+
+       /* Walk through the directory. */
+       while (ret && (d = readdir(dir)) != NULL) {
+               char path[PATH_MAX];
+               char *data;
+               size_t size;
+
+               if ((d->d_type != DT_DIR) ||
+                    !strcmp(".", d->d_name) ||
+                    !strcmp("..", d->d_name))
+                       continue;
+
+               scnprintf(path, sizeof(path), "%s/%s/comm",
+                         procfs__mountpoint(), d->d_name);
+
+               if (filename__read_str(path, &data, &size))
+                       continue;
+
+               ret = strncmp(name, data, len);
+               free(data);
+       }
+
+       closedir(dir);
+       return ret ? false : true;
+}
+
 int perf_evsel__open_strerror(struct perf_evsel *evsel, struct target *target,
                              int err, char *msg, size_t size)
 {
index 28c9f33..3cd4299 100644 (file)
@@ -343,43 +343,6 @@ int perf_event_paranoid(void)
 
        return value;
 }
-
-bool find_process(const char *name)
-{
-       size_t len = strlen(name);
-       DIR *dir;
-       struct dirent *d;
-       int ret = -1;
-
-       dir = opendir(procfs__mountpoint());
-       if (!dir)
-               return false;
-
-       /* Walk through the directory. */
-       while (ret && (d = readdir(dir)) != NULL) {
-               char path[PATH_MAX];
-               char *data;
-               size_t size;
-
-               if ((d->d_type != DT_DIR) ||
-                    !strcmp(".", d->d_name) ||
-                    !strcmp("..", d->d_name))
-                       continue;
-
-               scnprintf(path, sizeof(path), "%s/%s/comm",
-                         procfs__mountpoint(), d->d_name);
-
-               if (filename__read_str(path, &data, &size))
-                       continue;
-
-               ret = strncmp(name, data, len);
-               free(data);
-       }
-
-       closedir(dir);
-       return ret ? false : true;
-}
-
 static int
 fetch_ubuntu_kernel_version(unsigned int *puint)
 {
index 21c6db1..9ae7e6e 100644 (file)
@@ -49,8 +49,6 @@ int hex2u64(const char *ptr, u64 *val);
 extern unsigned int page_size;
 extern int cacheline_size;
 
-bool find_process(const char *name);
-
 int fetch_kernel_version(unsigned int *puint,
                         char *str, size_t str_sz);
 #define KVER_VERSION(x)                (((x) >> 16) & 0xff)