diff options
Diffstat (limited to 'tools/perf/util/thread.c')
-rw-r--r-- | tools/perf/util/thread.c | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/tools/perf/util/thread.c b/tools/perf/util/thread.c index 8c72d888e449..d5d3b22250f3 100644 --- a/tools/perf/util/thread.c +++ b/tools/perf/util/thread.c | |||
@@ -7,46 +7,6 @@ | |||
7 | #include "util.h" | 7 | #include "util.h" |
8 | #include "debug.h" | 8 | #include "debug.h" |
9 | 9 | ||
10 | /* Skip "." and ".." directories */ | ||
11 | static int filter(const struct dirent *dir) | ||
12 | { | ||
13 | if (dir->d_name[0] == '.') | ||
14 | return 0; | ||
15 | else | ||
16 | return 1; | ||
17 | } | ||
18 | |||
19 | int find_all_tid(int pid, pid_t ** all_tid) | ||
20 | { | ||
21 | char name[256]; | ||
22 | int items; | ||
23 | struct dirent **namelist = NULL; | ||
24 | int ret = 0; | ||
25 | int i; | ||
26 | |||
27 | sprintf(name, "/proc/%d/task", pid); | ||
28 | items = scandir(name, &namelist, filter, NULL); | ||
29 | if (items <= 0) | ||
30 | return -ENOENT; | ||
31 | *all_tid = malloc(sizeof(pid_t) * items); | ||
32 | if (!*all_tid) { | ||
33 | ret = -ENOMEM; | ||
34 | goto failure; | ||
35 | } | ||
36 | |||
37 | for (i = 0; i < items; i++) | ||
38 | (*all_tid)[i] = atoi(namelist[i]->d_name); | ||
39 | |||
40 | ret = items; | ||
41 | |||
42 | failure: | ||
43 | for (i=0; i<items; i++) | ||
44 | free(namelist[i]); | ||
45 | free(namelist); | ||
46 | |||
47 | return ret; | ||
48 | } | ||
49 | |||
50 | static struct thread *thread__new(pid_t pid) | 10 | static struct thread *thread__new(pid_t pid) |
51 | { | 11 | { |
52 | struct thread *self = zalloc(sizeof(*self)); | 12 | struct thread *self = zalloc(sizeof(*self)); |