OpenVZ Forum - RDF feed
type: channel
items: [PATCH 0/2] dm-ioband v0.0.3: The I/O bandwidth controller: Introduction
items: [PATCH 1/2] dm-ioband v0.0.3: The I/O bandwidth controller: Source code patch
items: [PATCH 2/2] dm-ioband v0.0.3: The I/O bandwidth controller: Document

[PATCH 0/2] dm-ioband v0.0.3: The I/O bandwidth controller: Introduction
type: item
description: Hi everyone, This is dm-ioband version 0.0.3 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. Changes since 0.0.2 (23rd January): - Ported to linux-2.6.24. - Rename the name of this device-mapper device as "ioband." - The output format of "dmsetup table" can be recognized by "dmsetup create/load/reload." - Add a new feature to block processes requesting BIOs in case the number of the uncompleted BIOs becomes too large. - Gid can be used as an ioband group type. - Support "dmsetup suspend --noflush." - Fix the problem that "dmsetup detach" doesn't wait the completion of all the BIOs in the detaching group. - Fix the problem that "dmsetup message attach" can't accept ID 0. - Code cleanups. Use prefix "dm_" for the global symbols. - Add examples in the document. Thanks, Ryo Tsuruta _______________________________________________ Containers mailing list Containers@lists.linux-foundation.org https://lists.linux-foundation.org/mailman/listinfo/containers
creator: Ryo Tsuruta
date: 2008-02-05T10:17:35-00:00

[PATCH 1/2] dm-ioband v0.0.3: The I/O bandwidth controller: Source code patch
type: item
description: Here is the patch of dm-ioband. Based on 2.6.24 Signed-off-by: Ryo Tsuruta <ryov@valinux.co.jp> Signed-off-by: Hirokazu Takahashi <taka@valinux.co.jp> diff -uprN linux-2.6.24.orig/drivers/md/Kconfig linux-2.6.24/drivers/md/Kconfig --- linux-2.6.24.orig/drivers/md/Kconfig 2008-01-25 07:58:37.000000000 +0900 +++ linux-2.6.24/drivers/md/Kconfig 2008-02-05 19:09:41.000000000 +0900 @@ -288,4 +288,17 @@ config DM_UEVENT ---help--- Generate udev events for DM events. +config DM_IOBAND + tristate "I/O bandwidth control (EXPERIMENTAL)" + depends on BLK_DEV_DM && EXPERIMENTAL + ---help--- + This device-mapper target allows to define how the + available bandwith of a storage device should be + shared between processes, cgroups, the partitions or the LUNs. + + Information on how to use dm-ioband is available in: + <file:Documentation/device-mapper/ioband.txt>. + + If unsure, say N. + endif # MD diff -uprN linux-2.6.24.orig/drivers/md/Makefile linux-2.6.24/drivers/md/Makefile --- linux-2.6.24.orig/drivers/md/Makefile 2008-01-25 07:58:37.000000000 +0900 +++ linux-2.6.24/drivers/md/Makefile 2008-02-05 19:09:41.000000000 +0900 @@ -9,6 +9,7 @@ dm-snapshot-objs := dm-snap.o dm-excepti dm-mirror-objs := dm-log.o dm-raid1.o dm-rdac-objs := dm-mpath-rdac.o dm-hp-sw-objs := dm-mpath-hp-sw.o +dm-ioband-objs := dm-ioband-ctl.o dm-ioband-policy.o dm-ioband-type.o md-mod-objs := md.o bitmap.o raid456-objs := raid5.o raid6algos.o raid6recov.o raid6tables.o \ raid6int1.o raid6int2.o raid6int4.o \ @@ -41,6 +42,7 @@ obj-$(CONFIG_DM_MULTIPATH_RDAC) += dm-rd obj-$(CONFIG_DM_SNAPSHOT) += dm-snapshot.o obj-$(CONFIG_DM_MIRROR) += dm-mirror.o obj-$(CONFIG_DM_ZERO) += dm-zero.o +obj-$(CONFIG_DM_IOBAND) += dm-ioband.o quiet_cmd_unroll = UNROLL $@ cmd_unroll = $(PERL) $(srctree)/$(src)/unroll.pl $(UNROLL) \ diff -uprN linux-2.6.24.orig/drivers/md/dm-ioband-ctl.c linux-2.6.24/drivers/md/dm-ioband-ctl.c --- linux-2.6.24.orig/drivers/md/dm-ioband-ctl.c 1970-01-01 09:00:00.000000000 +0900 +++ linux-2.6.24/dr…
creator: Ryo Tsuruta
date: 2008-02-05T10:18:46-00:00

[PATCH 2/2] dm-ioband v0.0.3: The I/O bandwidth controller: Document
type: item
description: Here is the document of dm-ioband. Based on 2.6.24 Signed-off-by: Ryo Tsuruta <ryov@valinux.co.jp> Signed-off-by: Hirokazu Takahashi <taka@valinux.co.jp> diff -uprN linux-2.6.24.orig/Documentation/device-mapper/ioband.txt linux-2.6.24/Documentation/device-mapper/ioband.txt --- linux-2.6.24.orig/Documentation/device-mapper/ioband.txt 1970-01-01 09:00:00.000000000 +0900 +++ linux-2.6.24/Documentation/device-mapper/ioband.txt 2008-02-05 19:09:41.000000000 +0900 @@ -0,0 +1,728 @@ +====================== +Document for dm-ioband +====================== + +Contents: + What's dm-ioband all about? + Differences from the CFQ I/O scheduler + How dm-ioband works + Setup and Installation + Getting started + Command Reference + Examples + TODO + + +What's dm-ioband all about? +=========================== +dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver. +Several jobs using the same physical device have to share the bandwidth of +the device. dm-ioband gives bandwidth to each job according to its weight, +which each job can set its own value to. + +At this time, a job is a group of processes with the same pid or pgrp or uid. +There is also a plan to make it support cgroup. A job can also be a virtual +machine such as KVM or Xen. + + +------+ +------+ +------+ +------+ +------+ +------+ + |cgroup| |cgroup| | the | | pid | | pid | | the | jobs + | A | | B | |others| | X | | Y | |others| + +--|---+ +--|---+ +--|---+ +--|---+ +--|---+ +--|---+ + +--V----+---V---+----V---+ +--V----+---V---+----V---+ + | group | group | default| | group | group | default| ioband groups + | | | group | | | | group | + +-------+-------+--------+ +-------+-------+--------+ + | ioband1 | | ioband2 | ioband devices + +-----------|------------+ +-----------|------------+ + +-----------V--------------+-------------V------------+ + | | | + | sdb1 | sdb2 | physical devices + +--------------------------+--------------------------+ + + +Differences from the CFQ I/O scheduler +========…
creator: Ryo Tsuruta
date: 2008-02-05T10:20:01-00:00