diff options
author | Vivek Goyal <vgoyal@redhat.com> | 2010-04-26 13:27:56 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2010-04-26 13:27:56 -0400 |
commit | afc24d49c1e5dbeef745c1c1246f5ae6ebd97c71 (patch) | |
tree | c936676ed21d032bf1d27f9ff1451f6242c8b3b6 /Documentation/cgroups/blkio-controller.txt | |
parent | e5ff082e8a68d9a6874990597497c7e6a96ad752 (diff) |
blk-cgroup: config options re-arrangement
This patch fixes few usability and configurability issues.
o All the cgroup based controller options are configurable from
"Genral Setup/Control Group Support/" menu. blkio is the only exception.
Hence make this option visible in above menu and make it configurable from
there to bring it inline with rest of the cgroup based controllers.
o Get rid of CONFIG_DEBUG_CFQ_IOSCHED.
This option currently does two things.
- Enable printing of cgroup paths in blktrace
- Enables CONFIG_DEBUG_BLK_CGROUP, which in turn displays additional stat
files in cgroup.
If we are using group scheduling, blktrace data is of not really much use
if cgroup information is not present. To get this data, currently one has to
also enable CONFIG_DEBUG_CFQ_IOSCHED, which in turn brings the overhead of
all the additional debug stat files which is not desired.
Hence, this patch moves printing of cgroup paths under
CONFIG_CFQ_GROUP_IOSCHED.
This allows us to get rid of CONFIG_DEBUG_CFQ_IOSCHED completely. Now all
the debug stat files are controlled only by CONFIG_DEBUG_BLK_CGROUP which
can be enabled through config menu.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Acked-by: Divyesh Shah <dpshah@google.com>
Reviewed-by: Gui Jianfeng <guijianfeng@cn.fujitsu.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'Documentation/cgroups/blkio-controller.txt')
-rw-r--r-- | Documentation/cgroups/blkio-controller.txt | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/Documentation/cgroups/blkio-controller.txt b/Documentation/cgroups/blkio-controller.txt index d422b410a995..48e0b21b0059 100644 --- a/Documentation/cgroups/blkio-controller.txt +++ b/Documentation/cgroups/blkio-controller.txt | |||
@@ -17,6 +17,9 @@ HOWTO | |||
17 | You can do a very simple testing of running two dd threads in two different | 17 | You can do a very simple testing of running two dd threads in two different |
18 | cgroups. Here is what you can do. | 18 | cgroups. Here is what you can do. |
19 | 19 | ||
20 | - Enable Block IO controller | ||
21 | CONFIG_BLK_CGROUP=y | ||
22 | |||
20 | - Enable group scheduling in CFQ | 23 | - Enable group scheduling in CFQ |
21 | CONFIG_CFQ_GROUP_IOSCHED=y | 24 | CONFIG_CFQ_GROUP_IOSCHED=y |
22 | 25 | ||
@@ -54,24 +57,16 @@ cgroups. Here is what you can do. | |||
54 | 57 | ||
55 | Various user visible config options | 58 | Various user visible config options |
56 | =================================== | 59 | =================================== |
57 | CONFIG_CFQ_GROUP_IOSCHED | ||
58 | - Enables group scheduling in CFQ. Currently only 1 level of group | ||
59 | creation is allowed. | ||
60 | |||
61 | CONFIG_DEBUG_CFQ_IOSCHED | ||
62 | - Enables some debugging messages in blktrace. Also creates extra | ||
63 | cgroup file blkio.dequeue. | ||
64 | |||
65 | Config options selected automatically | ||
66 | ===================================== | ||
67 | These config options are not user visible and are selected/deselected | ||
68 | automatically based on IO scheduler configuration. | ||
69 | |||
70 | CONFIG_BLK_CGROUP | 60 | CONFIG_BLK_CGROUP |
71 | - Block IO controller. Selected by CONFIG_CFQ_GROUP_IOSCHED. | 61 | - Block IO controller. |
72 | 62 | ||
73 | CONFIG_DEBUG_BLK_CGROUP | 63 | CONFIG_DEBUG_BLK_CGROUP |
74 | - Debug help. Selected by CONFIG_DEBUG_CFQ_IOSCHED. | 64 | - Debug help. Right now some additional stats file show up in cgroup |
65 | if this option is enabled. | ||
66 | |||
67 | CONFIG_CFQ_GROUP_IOSCHED | ||
68 | - Enables group scheduling in CFQ. Currently only 1 level of group | ||
69 | creation is allowed. | ||
75 | 70 | ||
76 | Details of cgroup files | 71 | Details of cgroup files |
77 | ======================= | 72 | ======================= |
@@ -174,13 +169,13 @@ Details of cgroup files | |||
174 | write, sync or async. | 169 | write, sync or async. |
175 | 170 | ||
176 | - blkio.avg_queue_size | 171 | - blkio.avg_queue_size |
177 | - Debugging aid only enabled if CONFIG_DEBUG_CFQ_IOSCHED=y. | 172 | - Debugging aid only enabled if CONFIG_DEBUG_BLK_CGROUP=y. |
178 | The average queue size for this cgroup over the entire time of this | 173 | The average queue size for this cgroup over the entire time of this |
179 | cgroup's existence. Queue size samples are taken each time one of the | 174 | cgroup's existence. Queue size samples are taken each time one of the |
180 | queues of this cgroup gets a timeslice. | 175 | queues of this cgroup gets a timeslice. |
181 | 176 | ||
182 | - blkio.group_wait_time | 177 | - blkio.group_wait_time |
183 | - Debugging aid only enabled if CONFIG_DEBUG_CFQ_IOSCHED=y. | 178 | - Debugging aid only enabled if CONFIG_DEBUG_BLK_CGROUP=y. |
184 | This is the amount of time the cgroup had to wait since it became busy | 179 | This is the amount of time the cgroup had to wait since it became busy |
185 | (i.e., went from 0 to 1 request queued) to get a timeslice for one of | 180 | (i.e., went from 0 to 1 request queued) to get a timeslice for one of |
186 | its queues. This is different from the io_wait_time which is the | 181 | its queues. This is different from the io_wait_time which is the |
@@ -191,7 +186,7 @@ Details of cgroup files | |||
191 | got a timeslice and will not include the current delta. | 186 | got a timeslice and will not include the current delta. |
192 | 187 | ||
193 | - blkio.empty_time | 188 | - blkio.empty_time |
194 | - Debugging aid only enabled if CONFIG_DEBUG_CFQ_IOSCHED=y. | 189 | - Debugging aid only enabled if CONFIG_DEBUG_BLK_CGROUP=y. |
195 | This is the amount of time a cgroup spends without any pending | 190 | This is the amount of time a cgroup spends without any pending |
196 | requests when not being served, i.e., it does not include any time | 191 | requests when not being served, i.e., it does not include any time |
197 | spent idling for one of the queues of the cgroup. This is in | 192 | spent idling for one of the queues of the cgroup. This is in |
@@ -200,7 +195,7 @@ Details of cgroup files | |||
200 | time it had a pending request and will not include the current delta. | 195 | time it had a pending request and will not include the current delta. |
201 | 196 | ||
202 | - blkio.idle_time | 197 | - blkio.idle_time |
203 | - Debugging aid only enabled if CONFIG_DEBUG_CFQ_IOSCHED=y. | 198 | - Debugging aid only enabled if CONFIG_DEBUG_BLK_CGROUP=y. |
204 | This is the amount of time spent by the IO scheduler idling for a | 199 | This is the amount of time spent by the IO scheduler idling for a |
205 | given cgroup in anticipation of a better request than the exising ones | 200 | given cgroup in anticipation of a better request than the exising ones |
206 | from other queues/cgroups. This is in nanoseconds. If this is read | 201 | from other queues/cgroups. This is in nanoseconds. If this is read |
@@ -209,7 +204,7 @@ Details of cgroup files | |||
209 | the current delta. | 204 | the current delta. |
210 | 205 | ||
211 | - blkio.dequeue | 206 | - blkio.dequeue |
212 | - Debugging aid only enabled if CONFIG_DEBUG_CFQ_IOSCHED=y. This | 207 | - Debugging aid only enabled if CONFIG_DEBUG_BLK_CGROUP=y. This |
213 | gives the statistics about how many a times a group was dequeued | 208 | gives the statistics about how many a times a group was dequeued |
214 | from service tree of the device. First two fields specify the major | 209 | from service tree of the device. First two fields specify the major |
215 | and minor number of the device and third field specifies the number | 210 | and minor number of the device and third field specifies the number |