From 80e9084d3e7be7fbec1ed72f90b88c7626fb93d1 Mon Sep 17 00:00:00 2001 From: Dhaval Giani Date: Thu, 18 Jun 2009 19:42:47 +0530 Subject: libcgroup: Use double pointers everywhere in the get_task APIs As Jan Safranek pointed out, it is better to have double pointers everywhere in the get_task API to keep consistency. Do the same. Signed-off-by: Dhaval Giani Acked-by: Balbir Singh --- include/libcgroup.h | 2 +- src/api.c | 6 +++--- tests/walk_task.c | 9 ++++----- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/include/libcgroup.h b/include/libcgroup.h index 149a560..dd87c63 100644 --- a/include/libcgroup.h +++ b/include/libcgroup.h @@ -301,7 +301,7 @@ int cgroup_get_task_begin(char *cgroup, char *controller, void **handle, * * return ECGEOF when the iterator finishes getting the list of tasks. */ -int cgroup_get_task_next(void *handle, pid_t *pid); +int cgroup_get_task_next(void **handle, pid_t *pid); int cgroup_get_task_end(void **handle); /* The wrappers for filling libcg structures */ diff --git a/src/api.c b/src/api.c index 2facfc8..ab35ed7 100644 --- a/src/api.c +++ b/src/api.c @@ -2487,7 +2487,7 @@ int cgroup_get_task_end(void **handle) return 0; } -int cgroup_get_task_next(void *handle, pid_t *pid) +int cgroup_get_task_next(void **handle, pid_t *pid) { int ret; @@ -2497,7 +2497,7 @@ int cgroup_get_task_next(void *handle, pid_t *pid) if (!handle) return ECGINVAL; - ret = fscanf((FILE *) handle, "%u", pid); + ret = fscanf((FILE *) *handle, "%u", pid); if (ret != 1) { if (ret == EOF) @@ -2536,7 +2536,7 @@ int cgroup_get_task_begin(char *cgroup, char *controller, void **handle, last_errno = errno; return ECGOTHER; } - ret = cgroup_get_task_next(*handle, pid); + ret = cgroup_get_task_next(handle, pid); return ret; } diff --git a/tests/walk_task.c b/tests/walk_task.c index fb89963..42ef32d 100644 --- a/tests/walk_task.c +++ b/tests/walk_task.c @@ -8,7 +8,7 @@ int main(int argc, char *argv[]) { int ret, i; char *group = NULL; - FILE *tasks = NULL; + void *handle; if (argc < 2) { printf("No list of groups provided\n"); @@ -26,11 +26,10 @@ int main(int argc, char *argv[]) pid_t pid; group = strdup(argv[i]); printf("Printing the details of groups %s\n", group); - ret = cgroup_get_task_begin(group, "cpu", (void *) &tasks, - &pid); + ret = cgroup_get_task_begin(group, "cpu", &handle, &pid); while (!ret) { printf("Pid is %u\n", pid); - ret = cgroup_get_task_next((void *) tasks, &pid); + ret = cgroup_get_task_next(&handle, &pid); if (ret && ret != ECGEOF) { printf("cgroup_get_task_next failed with %s\n", cgroup_strerror(ret)); @@ -42,7 +41,7 @@ int main(int argc, char *argv[]) } free(group); group = NULL; - ret = cgroup_get_task_end((void **) &tasks); + ret = cgroup_get_task_end(&handle); } return 0; -- cgit