Home
last modified time | relevance | path

Searched refs:cgroup (Results 1 – 25 of 47) sorted by relevance

12

/linux-3.4.99/kernel/
Dcgroup_freezer.c38 struct cgroup *cgroup) in cgroup_freezer() argument
41 cgroup_subsys_state(cgroup, freezer_subsys_id), in cgroup_freezer()
131 static struct cgroup_subsys_state *freezer_create(struct cgroup *cgroup) in freezer_create() argument
144 static void freezer_destroy(struct cgroup *cgroup) in freezer_destroy() argument
146 struct freezer *freezer = cgroup_freezer(cgroup); in freezer_destroy()
165 static int freezer_can_attach(struct cgroup *new_cgroup, in freezer_can_attach()
196 if (!freezer->css.cgroup->parent) in freezer_fork()
214 static void update_if_frozen(struct cgroup *cgroup, in update_if_frozen() argument
222 cgroup_iter_start(cgroup, &it); in update_if_frozen()
223 while ((task = cgroup_iter_next(cgroup, &it))) { in update_if_frozen()
[all …]
Dcgroup.c122 struct cgroup top_cgroup;
186 struct cgroup *cgrp;
243 inline int cgroup_is_removed(const struct cgroup *cgrp) in cgroup_is_removed()
253 static int cgroup_is_releasable(const struct cgroup *cgrp) in cgroup_is_releasable()
261 static int notify_on_release(const struct cgroup *cgrp) in notify_on_release()
266 static int clone_children(const struct cgroup *cgrp) in clone_children()
288 static void check_for_release(struct cgroup *cgrp);
297 struct cgroup *cgrp;
378 struct cgroup *cgrp = link->cgrp; in __put_css_set()
433 struct cgroup *new_cgrp, in compare_css_sets()
[all …]
Dcpuset.c113 static inline struct cpuset *cgroup_cs(struct cgroup *cont) in cgroup_cs()
407 struct cgroup *cont; in validate_change()
411 list_for_each_entry(cont, &cur->css.cgroup->children, sibling) { in validate_change()
430 list_for_each_entry(cont, &par->css.cgroup->children, sibling) { in validate_change()
443 if (cgroup_task_count(cur->css.cgroup)) { in validate_change()
479 struct cgroup *cont; in update_domain_attr_tree()
491 list_for_each_entry(cont, &cp->css.cgroup->children, sibling) { in update_domain_attr_tree()
593 struct cgroup *cont; in generate_sched_domains()
613 list_for_each_entry(cont, &cp->css.cgroup->children, sibling) { in generate_sched_domains()
851 scan.cg = cs->css.cgroup; in update_tasks_cpumask()
[all …]
/linux-3.4.99/include/linux/
Dcgroup.h25 struct cgroup;
32 extern bool cgroup_lock_live_group(struct cgroup *cgrp);
65 struct cgroup *cgroup; member
162 struct cgroup { struct
178 struct cgroup *parent; /* my parent */ argument
185 struct cgroup *top_cgroup; argument
298 ssize_t (*read)(struct cgroup *cgrp, struct cftype *cft,
305 u64 (*read_u64)(struct cgroup *cgrp, struct cftype *cft);
309 s64 (*read_s64)(struct cgroup *cgrp, struct cftype *cft);
316 int (*read_map)(struct cgroup *cont, struct cftype *cft,
[all …]
Dmemcontrol.h89 extern struct mem_cgroup *mem_cgroup_from_cont(struct cgroup *cont);
92 int mm_match_cgroup(const struct mm_struct *mm, const struct mem_cgroup *cgroup) in mm_match_cgroup() argument
98 return cgroup == memcg; in mm_match_cgroup()
/linux-3.4.99/Documentation/cgroups/
Dcgroups.txt46 A *cgroup* associates a set of tasks with a set of parameters for one
52 schedules a resource or applies per-cgroup limits, but it may be
59 state attached to each cgroup in the hierarchy. Each hierarchy has
60 an instance of the cgroup virtual filesystem associated with it.
66 instance of the cgroup virtual file system, specify and query to
67 which cgroup a task is assigned, and list the task pids assigned to
68 a cgroup. Those creations and assignments only affect the hierarchy
69 associated with that instance of the cgroup file system.
73 cgroup support to provide new attributes for cgroups, such as
74 accounting/limiting the resources which processes in a cgroup can
[all …]
Dfreezer-subsystem.txt1 The cgroup freezer is useful to batch job management system which start
5 whole. The cgroup freezer uses cgroups to describe the set of tasks to
9 The cgroup freezer will also be useful for checkpointing running groups
11 image of the tasks by attempting to force the tasks in a cgroup into a
47 In contrast, the cgroup freezer uses the kernel freezer code to
54 cgroup. Subsequently writing "THAWED" will unfreeze the tasks in the cgroup.
57 Note freezer.state doesn't exist in root cgroup, which means root cgroup
62 # mkdir /sys/fs/cgroup/freezer
63 # mount -t cgroup -ofreezer freezer /sys/fs/cgroup/freezer
64 # mkdir /sys/fs/cgroup/freezer/0
[all …]
Ddevices.txt5 Implement a cgroup to track and enforce open and mknod restrictions
6 on device files. A device cgroup associates a device access
7 whitelist with each cgroup. A whitelist entry has 4 fields.
13 The root device cgroup starts with rwm to 'all'. A child device
14 cgroup gets a copy of the parent. Administrators can then remove
15 devices from the whitelist or add new entries. A child cgroup can
25 echo 'c 1:3 mr' > /sys/fs/cgroup/1/devices.allow
27 allows cgroup 1 to read and mknod the device usually known as
30 echo a > /sys/fs/cgroup/1/devices.deny
34 echo a > /sys/fs/cgroup/1/devices.allow
[all …]
Dcpuacct.txt11 Accounting groups can be created by first mounting the cgroup filesystem.
13 # mount -t cgroup -ocpuacct none /sys/fs/cgroup
16 visible at /sys/fs/cgroup. At bootup, this group includes all the tasks in
17 the system. /sys/fs/cgroup/tasks lists the tasks in this cgroup.
18 /sys/fs/cgroup/cpuacct.usage gives the CPU time (in nanoseconds) obtained
22 New accounting groups can be created under the parent group /sys/fs/cgroup.
24 # cd /sys/fs/cgroup
31 /sys/fs/cgroup/cpuacct.usage also.
34 CPU time obtained by the cgroup into user and system times. Currently
37 user: Time spent by tasks of the cgroup in user mode.
[all …]
Dmemory.txt9 When we mention a cgroup (cgroupfs's directory) with memory controller,
10 we call it "memory cgroup". When you see git-log and source code, you'll
23 b. Create a cgroup with limited amount of memory, this can be used
44 - Root cgroup has no limit controls.
52 cgroup.procs # show list of processes
53 cgroup.event_control # an interface for event_fd()
112 with the controller. Each cgroup has a memory controller specific data
140 1. Accounting happens per cgroup
141 2. Each mm_struct knows about which cgroup it belongs to
143 cgroup it belongs to
[all …]
Dnet_prio.txt1 Network priority cgroup
4 The Network priority cgroup provides an interface to allow an administrator to
15 This cgroup allows an administrator to assign a process to a group which defines
17 be created by first mounting the cgroup filesystem.
19 # mount -t cgroup -onet_prio none /sys/fs/cgroup/net_prio
22 becomes visible at '/sys/fs/cgroup/net_prio'. This group includes all tasks in
23 the system. '/sys/fs/cgroup/net_prio/tasks' lists the tasks in this cgroup.
25 Each net_prio cgroup contains two files that are subsystem specific
29 value that the kernel uses as an internal representation of this cgroup.
41 iscsi net_prio cgroup and egressing on interface eth0 to have the priority of
[all …]
Dblkio-controller.txt5 cgroup subsys "blkio" implements the block io controller. There seems to be
8 Plan is to use the same cgroup based management interface for blkio controller
34 mount -t tmpfs cgroup_root /sys/fs/cgroup
35 mkdir /sys/fs/cgroup/blkio
36 mount -t cgroup -o blkio none /sys/fs/cgroup/blkio
39 mkdir -p /sys/fs/cgroup/blkio/test1/ /sys/fs/cgroup/blkio/test2
42 echo 1000 > /sys/fs/cgroup/blkio/test1/blkio.weight
43 echo 500 > /sys/fs/cgroup/blkio/test2/blkio.weight
46 launch two dd threads in different cgroup to read those files.
52 echo $! > /sys/fs/cgroup/blkio/test1/tasks
[all …]
Dmemcg_test.txt279 mount -t cgroup -o cpuset none /opt/cpuset
320 echo 1 >/opt/cgroup/01/memory/use_hierarchy
321 mkdir /opt/cgroup/01/child_a
322 mkdir /opt/cgroup/01/child_b
329 /opt/cgroup/01/child_a/child_aa
330 /opt/cgroup/01/child_b/child_bb
331 /opt/cgroup/01/child_c
337 race and lock dependency with other cgroup subsystems.
340 # mount -t cgroup none /cgroup -o cpuset,memory,cpu,devices
351 # mount -t cgroup none /cgroup -o memory
[all …]
Dcpusets.txt50 Cpusets use the generic cgroup subsystem described in
62 User level code may create and destroy cpusets by name in the cgroup
122 in the task structure to a reference counted cgroup structure.
152 You should mount the "cgroup" filesystem type in order to enable
167 Each cpuset is represented by a directory in the cgroup file system
168 containing (on top of the standard cgroup files) the following
645 cpuset is bound with another cgroup subsystem which has some restrictions
664 1) mkdir /sys/fs/cgroup/cpuset
665 2) mount -t cgroup -ocpuset cpuset /sys/fs/cgroup/cpuset
667 the /sys/fs/cgroup/cpuset virtual file system.
[all …]
/linux-3.4.99/Documentation/accounting/
Dcgroupstats.txt2 http://lkml.org/lkml/2007/4/11/187 and implements per cgroup statistics as
5 Per cgroup statistics infrastructure re-uses code from the taskstats
6 interface. A new set of cgroup operations are registered with commands
8 extend per cgroup statistics, by adding members to the cgroupstats
13 user space requests for statistics by passing the cgroup path.
14 Statistics about the state of all the tasks in the cgroup is returned to
21 To extract cgroup statistics a utility very similar to getdelays.c
24 ~/balbir/cgroupstats # ./getdelays -C "/sys/fs/cgroup/a"
26 ~/balbir/cgroupstats # ./getdelays -C "/sys/fs/cgroup"
/linux-3.4.99/security/
Ddevice_cgroup.c52 static inline struct dev_cgroup *cgroup_to_devcgroup(struct cgroup *cgroup) in cgroup_to_devcgroup() argument
54 return css_to_devcgroup(cgroup_subsys_state(cgroup, devices_subsys_id)); in cgroup_to_devcgroup()
64 static int devcgroup_can_attach(struct cgroup *new_cgrp, in devcgroup_can_attach()
159 static struct cgroup_subsys_state *devcgroup_create(struct cgroup *cgroup) in devcgroup_create() argument
162 struct cgroup *parent_cgroup; in devcgroup_create()
169 parent_cgroup = cgroup->parent; in devcgroup_create()
197 static void devcgroup_destroy(struct cgroup *cgroup) in devcgroup_destroy() argument
202 dev_cgroup = cgroup_to_devcgroup(cgroup); in devcgroup_destroy()
248 static int devcgroup_seq_read(struct cgroup *cgroup, struct cftype *cft, in devcgroup_seq_read() argument
251 struct dev_cgroup *devcgroup = cgroup_to_devcgroup(cgroup); in devcgroup_seq_read()
[all …]
/linux-3.4.99/net/core/
Dnetprio_cgroup.c26 static struct cgroup_subsys_state *cgrp_create(struct cgroup *cgrp);
27 static void cgrp_destroy(struct cgroup *cgrp);
28 static int cgrp_populate(struct cgroup_subsys *ss, struct cgroup *cgrp);
47 static inline struct cgroup_netprio_state *cgrp_netprio_state(struct cgroup *cgrp) in cgrp_netprio_state()
123 static struct cgroup_subsys_state *cgrp_create(struct cgroup *cgrp) in cgrp_create()
147 static void cgrp_destroy(struct cgroup *cgrp) in cgrp_destroy()
165 static u64 read_prioidx(struct cgroup *cgrp, struct cftype *cft) in read_prioidx()
170 static int read_priomap(struct cgroup *cont, struct cftype *cft, in read_priomap()
188 static int write_priomap(struct cgroup *cgrp, struct cftype *cft, in write_priomap()
262 static int cgrp_populate(struct cgroup_subsys *ss, struct cgroup *cgrp) in cgrp_populate()
/linux-3.4.99/net/sched/
Dcls_cgroup.c25 static struct cgroup_subsys_state *cgrp_create(struct cgroup *cgrp);
26 static void cgrp_destroy(struct cgroup *cgrp);
27 static int cgrp_populate(struct cgroup_subsys *ss, struct cgroup *cgrp);
41 static inline struct cgroup_cls_state *cgrp_cls_state(struct cgroup *cgrp) in cgrp_cls_state()
53 static struct cgroup_subsys_state *cgrp_create(struct cgroup *cgrp) in cgrp_create()
67 static void cgrp_destroy(struct cgroup *cgrp) in cgrp_destroy()
72 static u64 read_classid(struct cgroup *cgrp, struct cftype *cft) in read_classid()
77 static int write_classid(struct cgroup *cgrp, struct cftype *cft, u64 value) in write_classid()
91 static int cgrp_populate(struct cgroup_subsys *ss, struct cgroup *cgrp) in cgrp_populate()
/linux-3.4.99/net/ipv4/
Dtcp_memcontrol.c9 static u64 tcp_cgroup_read(struct cgroup *cont, struct cftype *cft);
10 static int tcp_cgroup_write(struct cgroup *cont, struct cftype *cft,
12 static int tcp_cgroup_reset(struct cgroup *cont, unsigned int event);
52 int tcp_init_cgroup(struct cgroup *cgrp, struct cgroup_subsys *ss) in tcp_init_cgroup()
97 void tcp_destroy_cgroup(struct cgroup *cgrp) in tcp_destroy_cgroup()
153 static int tcp_cgroup_write(struct cgroup *cont, struct cftype *cft, in tcp_cgroup_write()
201 static u64 tcp_cgroup_read(struct cgroup *cont, struct cftype *cft) in tcp_cgroup_read()
223 static int tcp_cgroup_reset(struct cgroup *cont, unsigned int event) in tcp_cgroup_reset()
/linux-3.4.99/block/
Dblk-cgroup.c31 static struct cgroup_subsys_state *blkiocg_create(struct cgroup *);
32 static int blkiocg_can_attach(struct cgroup *, struct cgroup_taskset *);
33 static void blkiocg_attach(struct cgroup *, struct cgroup_taskset *);
34 static void blkiocg_destroy(struct cgroup *);
35 static int blkiocg_populate(struct cgroup_subsys *, struct cgroup *);
107 struct blkio_cgroup *cgroup_to_blkio_cgroup(struct cgroup *cgroup) in cgroup_to_blkio_cgroup() argument
109 return container_of(cgroup_subsys_state(cgroup, blkio_subsys_id), in cgroup_to_blkio_cgroup()
493 cgroup_path(blkcg->css.cgroup, blkg->path, sizeof(blkg->path)); in blkiocg_add_blkio_group()
574 blkiocg_reset_stats(struct cgroup *cgroup, struct cftype *cftype, u64 val) in blkiocg_reset_stats() argument
587 blkcg = cgroup_to_blkio_cgroup(cgroup); in blkiocg_reset_stats()
[all …]
Dblk-cgroup.h308 extern struct blkio_cgroup *cgroup_to_blkio_cgroup(struct cgroup *cgroup);
331 struct cgroup;
333 cgroup_to_blkio_cgroup(struct cgroup *cgroup) { return NULL; }
/linux-3.4.99/tools/perf/Documentation/
Dperf-stat.txt87 --cgroup name::
88 monitor only in the container (cgroup) called "name". This option is available only
89 in per-cpu mode. The cgroup filesystem must be mounted. All threads belonging to
91 can be provided. Each cgroup is applied to the corresponding event, i.e., first cgroup
92 to first event, second cgroup to second event and so on. It is possible to provide
93 an empty cgroup (monitor all the time) using, e.g., -G foo,,bar. Cgroups must have
Dperf-record.txt145 --cgroup name,...::
146 monitor only in the container (cgroup) called "name". This option is available only
147 in per-cpu mode. The cgroup filesystem must be mounted. All threads belonging to
149 can be provided. Each cgroup is applied to the corresponding event, i.e., first cgroup
150 to first event, second cgroup to second event and so on. It is possible to provide
151 an empty cgroup (monitor all the time) using, e.g., -G foo,,bar. Cgroups must have
/linux-3.4.99/mm/
Dmemcontrol.c828 struct mem_cgroup *mem_cgroup_from_cont(struct cgroup *cont) in mem_cgroup_from_cont()
1286 struct cgroup *cgrp = memcg->css.cgroup; in mem_cgroup_swappiness()
1416 struct cgroup *task_cgrp; in mem_cgroup_print_oom_info()
1417 struct cgroup *mem_cgrp; in mem_cgroup_print_oom_info()
1431 mem_cgrp = memcg->css.cgroup; in mem_cgroup_print_oom_info()
2676 struct cgroup *cg = child->css.cgroup; in mem_cgroup_move_parent()
2677 struct cgroup *pcg = cg->parent; in mem_cgroup_move_parent()
3728 struct cgroup *cgrp = memcg->css.cgroup; in mem_cgroup_force_empty()
3805 int mem_cgroup_force_empty_write(struct cgroup *cont, unsigned int event) in mem_cgroup_force_empty_write()
3811 static u64 mem_cgroup_hierarchy_read(struct cgroup *cont, struct cftype *cft) in mem_cgroup_hierarchy_read()
[all …]
/linux-3.4.99/include/net/
Dtcp_memcontrol.h15 int tcp_init_cgroup(struct cgroup *cgrp, struct cgroup_subsys *ss);
16 void tcp_destroy_cgroup(struct cgroup *cgrp);

12