All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -mm 2/3] i/o controller infrastructure
@ 2008-08-03 22:14 Andrea Righi
       [not found] ` <1217801698-13438-3-git-send-email-righi.andrea-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2008-08-04  0:48 ` Li Zefan
  0 siblings, 2 replies; 6+ 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] 6+ messages in thread
* [PATCH -mm 2/3] i/o controller infrastructure
@ 2008-08-03 22:14 Andrea Righi
  0 siblings, 0 replies; 6+ messages in thread
From: Andrea Righi @ 2008-08-03 22:14 UTC (permalink / raw)
  To: Balbir Singh, Paul Menage
  Cc: axboe-tSWWG44O7X1aa/9Udqfwiw, randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA,
	Marco Innocenti,
	containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Carl Henrik Lunde,
	eric.rannaud-Re5JQEeQqe8AvxtiuMwx3w, Divyesh Shah,
	matt-cT2on/YLNlBWk0Htik3J/w,
	akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b,
	subrata-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8, roberto-5KDOxZqKugI,
	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-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 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] 6+ messages in thread

end of thread, other threads:[~2008-08-04  6:32 UTC | newest]

Thread overview: 6+ 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
     [not found] ` <1217801698-13438-3-git-send-email-righi.andrea-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-08-04  0:48   ` Li Zefan
2008-08-04  0:48 ` Li Zefan
     [not found]   ` <489651E6.90001-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2008-08-04  6:31     ` Andrea Righi
2008-08-04  6:31   ` Andrea Righi
  -- strict thread matches above, loose matches on Subject: below --
2008-08-03 22:14 Andrea Righi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.