Thank you Ken for the reply. I created a cgroup under /dev/cpuctl and added a process to the tasks file. using echo PID > tasks. however it wont get registered there, of course the PID changes every time when the application is re-started. In my case I was testing with browser and the music player. Once you exit and come back the PID is gone.
Since NAME of the app is constant(ex - com.android.browser) I will have to get the PID from the task_struct I guess, and assign the PID. How ever what is the mechanism to make a process change between two cgroups? In a programmatical manner with out issuing echo PID. (can it be hard coded in the source..) I don't know if this is a stupid Q anyways, normal applications have the user name as something like app_XX is there any way of changing that to a root? through capabilities may be? CAP_SYS_NICE is defined in capability.h how do I know if it is granted to my process? if not granting it. (in the kernel space as well as inside the app) On Tue, May 29, 2012 at 4:17 PM, Ken Chen <ken.chen....@gmail.com> wrote: > Currently, Android dalvik VM leverages cpu cgroup to determine whether to > use kernel scheduler policies, /dev/cpuctl is mounted in init.rc by > default. You can create a sub-cpu cgroup under /dev/cpuctl, and control the > priorization of processes there as long as your process is granted with > CAP_SYS_NICE capability or running as root. > > Ken > > On Mon, May 28, 2012 at 6:55 AM, Kanishka Ariyapala <kanishka...@gmail.com > > wrote: > >> after some googling came to know that android framework is it self using >> cgroups. Is it the reason for the device or resource busy error? >> Dose it mean that I won't be able to use cgroups? >> >> >> On Mon, May 28, 2012 at 12:26 AM, DK <kanishka...@gmail.com> wrote: >> >>> Hi, >>> >>> I have trouble configuring cgroups, please help! When I issue the >>> following command I get the error "mount: Device or resource busy" >>> >>> # mount -t cgroup -ocpu none /dev/cpuctl >>> >>> These are the configurations options that I have enabled. >>> >>> CONFIG_GROUP_SCHED=y >>> CONFIG_FAIR_GROUP_SCHED=y >>> CONFIG_RT_GROUP_SCHED=y >>> # CONFIG_USER_SCHED is not set >>> CONFIG_CGROUP_SCHED=y >>> CONFIG_CGROUPS=y >>> CONFIG_CGROUP_DEBUG=y >>> CONFIG_CGROUP_NS=y >>> CONFIG_CGROUP_FREEZER=y >>> CONFIG_CGROUP_DEVICE=y >>> CONFIG_CGROUP_CPUACCT=y >>> CONFIG_RESOURCE_COUNTERS=y >>> CONFIG_CGROUP_MEM_RES_CTLR=y >>> CONFIG_CGROUP_MEM_RES_CTLR_SWAP=y >>> CONFIG_MM_OWNER=y >>> >>> Why is mount saying device busy? >>> >>> note: I was following the steps in the documentation(sched-design- >>> CFS.txt) >>> >>> Regards, >>> Kanishka >>> >>> -- >>> unsubscribe: android-kernel+unsubscr...@googlegroups.com >>> website: http://groups.google.com/group/android-kernel >> >> >> -- >> unsubscribe: android-kernel+unsubscr...@googlegroups.com >> website: http://groups.google.com/group/android-kernel >> > > > > -- > > > -- Ken Chen > > -- > unsubscribe: android-kernel+unsubscr...@googlegroups.com > website: http://groups.google.com/group/android-kernel > -- unsubscribe: android-kernel+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-kernel