* [PATCH -mm 2/3] i/o controller infrastructure
@ 2008-08-03 22:14 Andrea Righi
2008-08-04 0:48 ` Li Zefan
0 siblings, 1 reply; 3+ messages in thread
From: Andrea Righi @ 2008-08-03 22:14 UTC (permalink / raw)
To: Balbir Singh, Paul Menage
Cc: akpm, Li Zefan, Carl Henrik Lunde, axboe, matt, roberto,
Marco Innocenti, randy.dunlap, Divyesh Shah, subrata,
eric.rannaud, containers, linux-kernel, Andrea Righi
This is the core io-throttle kernel infrastructure. It creates the basic
interfaces to cgroups and implements the I/O measurement and throttling
functions.
Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
---
block/Makefile | 2 ++
include/linux/cgroup_subsys.h | 6 ++++++
init/Kconfig | 10 ++++++++++
3 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/block/Makefile b/block/Makefile
index 208000b..b3afc86 100644
--- a/block/Makefile
+++ b/block/Makefile
@@ -13,6 +13,8 @@ obj-$(CONFIG_IOSCHED_AS) += as-iosched.o
obj-$(CONFIG_IOSCHED_DEADLINE) += deadline-iosched.o
obj-$(CONFIG_IOSCHED_CFQ) += cfq-iosched.o
+obj-$(CONFIG_CGROUP_IO_THROTTLE) += blk-io-throttle.o
+
obj-$(CONFIG_BLK_DEV_IO_TRACE) += blktrace.o
obj-$(CONFIG_BLOCK_COMPAT) += compat_ioctl.o
obj-$(CONFIG_BLK_DEV_INTEGRITY) += blk-integrity.o
diff --git a/include/linux/cgroup_subsys.h b/include/linux/cgroup_subsys.h
index 23c02e2..198ee52 100644
--- a/include/linux/cgroup_subsys.h
+++ b/include/linux/cgroup_subsys.h
@@ -52,3 +52,9 @@ SUBSYS(memrlimit_cgroup)
#endif
/* */
+
+#ifdef CONFIG_CGROUP_IO_THROTTLE
+SUBSYS(iothrottle)
+#endif
+
+/* */
diff --git a/init/Kconfig b/init/Kconfig
index a451916..39691c2 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -306,6 +306,16 @@ config CGROUP_DEVICE
Provides a cgroup implementing whitelists for devices which
a process in the cgroup can mknod or open.
+config CGROUP_IO_THROTTLE
+ bool "Enable cgroup I/O throttling (EXPERIMENTAL)"
+ depends on CGROUPS && EXPERIMENTAL
+ help
+ This allows to limit the maximum I/O bandwidth for specific
+ cgroup(s).
+ See Documentation/controllers/io-throttle.txt for more information.
+
+ If unsure, say N.
+
config CPUSETS
bool "Cpuset support"
depends on SMP && CGROUPS
--
1.5.4.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH -mm 2/3] i/o controller infrastructure
2008-08-03 22:14 [PATCH -mm 2/3] i/o controller infrastructure Andrea Righi
@ 2008-08-04 0:48 ` Li Zefan
2008-08-04 6:31 ` Andrea Righi
0 siblings, 1 reply; 3+ messages in thread
From: Li Zefan @ 2008-08-04 0:48 UTC (permalink / raw)
To: Andrea Righi
Cc: Balbir Singh, Paul Menage, akpm, Carl Henrik Lunde, axboe, matt,
roberto, Marco Innocenti, randy.dunlap, Divyesh Shah, subrata,
eric.rannaud, containers, linux-kernel
Andrea Righi wrote:
> This is the core io-throttle kernel infrastructure. It creates the basic
> interfaces to cgroups and implements the I/O measurement and throttling
> functions.
>
> Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
> ---
> block/Makefile | 2 ++
> include/linux/cgroup_subsys.h | 6 ++++++
> init/Kconfig | 10 ++++++++++
> 3 files changed, 18 insertions(+), 0 deletions(-)
>
where is block/blk-io-throttle.c and include/linux/blk-io-throttle.h?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH -mm 2/3] i/o controller infrastructure
2008-08-04 0:48 ` Li Zefan
@ 2008-08-04 6:31 ` Andrea Righi
0 siblings, 0 replies; 3+ messages in thread
From: Andrea Righi @ 2008-08-04 6:31 UTC (permalink / raw)
To: Li Zefan
Cc: Balbir Singh, Paul Menage, akpm, Carl Henrik Lunde, axboe, matt,
roberto, Marco Innocenti, randy.dunlap, Divyesh Shah, subrata,
eric.rannaud, containers, linux-kernel
Li Zefan wrote:
> Andrea Righi wrote:
>> This is the core io-throttle kernel infrastructure. It creates the basic
>> interfaces to cgroups and implements the I/O measurement and throttling
>> functions.
>>
>> Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
>> ---
>> block/Makefile | 2 ++
>> include/linux/cgroup_subsys.h | 6 ++++++
>> init/Kconfig | 10 ++++++++++
>> 3 files changed, 18 insertions(+), 0 deletions(-)
>>
>
> where is block/blk-io-throttle.c and include/linux/blk-io-throttle.h?
>
mmmh.. they should have been here, I mean, in patch 2/3 but it seems
they're gone in patch 1/3 (subject: i/o controller documentation):
Documentation of the block device I/O controller: description, usage,
advantages and design.
Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
---
Documentation/controllers/io-throttle.txt | 312 +++++++++++++
block/blk-io-throttle.c | 719 +++++++++++++++++++++++++++++
include/linux/blk-io-throttle.h | 41 ++
3 files changed, 1072 insertions(+), 0 deletions(-)
create mode 100644 Documentation/controllers/io-throttle.txt
create mode 100644 block/blk-io-throttle.c
create mode 100644 include/linux/blk-io-throttle.h
...
I'm pretty sure I did a:
git-commit -s Documentation/controllers/io-throttle.txt
in my local branch (history confirms this), but, anyway, if you think
it's worth it I can fix it and post the patchset again, just let me
know.
Thanks for looking at it!
-Andrea
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-08-04 6:32 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-03 22:14 [PATCH -mm 2/3] i/o controller infrastructure Andrea Righi
2008-08-04 0:48 ` Li Zefan
2008-08-04 6:31 ` Andrea Righi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox