From: Balbir Singh Date: Fri, 18 Apr 2008 05:34:12 +0000 (+0000) Subject: Miscellaneous scripts and libcg bug fixes X-Git-Tag: v0.34~289^2~24 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5ddac5d87d47ace625a04146b91eed6c1ef9daea;p=thirdparty%2Flibcgroup.git Miscellaneous scripts and libcg bug fixes Turn off -DDEBUG in Makefile Signed-off-by: Sudhir Kumar Signed-off-by: Balbir Singh git-svn-id: https://libcg.svn.sourceforge.net/svnroot/libcg/branches/balbir@18 4f4bb910-9a46-0410-90c8-c897d4f1cd53 --- diff --git a/Makefile b/Makefile index 9c175fa5..40737d3a 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ YACC_DEBUG=-t DEBUG=-DDEBUG INC=-I. -CFLAGS=-g -O2 -Wextra $(DEBUG) $(INC) +CFLAGS=-g -O2 -Wextra $(INC) LIBS= -lcg LDFLAGS= -L . INSTALLPREFIX= diff --git a/api.c b/api.c index c2d6ef98..b7a224f2 100644 --- a/api.c +++ b/api.c @@ -106,6 +106,9 @@ int cg_init() int ret = 0; proc_mount = fopen("/proc/mounts", "r"); + if (proc_mount == NULL) { + return EIO; + } while ((ent = getmntent(proc_mount)) != NULL) { if (!strncmp(ent->mnt_fsname,"cgroup", strlen("cgroup"))) { @@ -406,14 +409,14 @@ int cg_delete_cgroup(struct cgroup *cgroup, int ignore_migration) int error = ECGROUPNOTALLOWED; strcpy(path, MOUNT_POINT); - strcat(path,"/tasks"); + strcat(path,"tasks"); base_tasks = fopen(path, "w"); if (!base_tasks) goto base_open_err; cg_build_path(cgroup->name, path); - strcat(path,"/tasks"); + strcat(path,"tasks"); delete_tasks = fopen(path, "r"); if (!delete_tasks) diff --git a/scripts/doc/howto.txt b/scripts/doc/howto.txt index 38c95e3d..c6796d68 100644 --- a/scripts/doc/howto.txt +++ b/scripts/doc/howto.txt @@ -35,6 +35,20 @@ class2 cpu.shares=512 The configuration below creates two classes class1 and class2 and assigns shares of 1024 to class1 and 512 to class1. +The other options that can be specified are + +tuid = owner of the tasks file +tgid = group permissions of the tasks file +cuid = owner of the newly created node +cgid = group permissions of the newly created node + +Example + +class1 cpu.shares = 1024 tuid=root tgid=root cuid=database cgid=database. + +By default all these files are owned by root. The flexibilty of specifying +owners makes it easier for other applications to use resource management. + Intialization script --------------------