Skip to content

RFC cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQ

Vasily Tarasov lkml 1 version In review

Get series with b4
b4 am 1203058414.042372.2088.nullmailer@me

Versions newest first

  1. v1 RFC Latest9 patches 1 replyIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c include/linux/cfq-iosched.h+104 -990 replies
2/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/Makefile block/cfqio-cgroup.c include/linux/cfqio-cgroup.h +1 more+130 -00 replies
3/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfqio-cgroup.c include/linux/cfq-iosched.h include/linux/cfqio-cgroup.h+197 -00 replies
4/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c include/linux/cfqio-cgroup.h+39 -00 replies
5/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c include/linux/cfq-iosched.h+37 -120 replies
6/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c block/cfqio-cgroup.c include/linux/cfq-iosched.h +1 more+84 -00 replies
7/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c block/cfqio-cgroup.c include/linux/cfq-iosched.h+5 -10 replies
8/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQblock/cfq-iosched.c+3 -00 replies
9/9cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQinit/Kconfig+7 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC][PATCH 0/9] cgroups: block: cfq: I/O bandwidth controlling subsystem for CGroups based on CFQ

From: Vasily Tarasov <[email protected]>

The following patchset introduces I/O bandwidth controlling subsystem for the CGroups framework based on the CFQ scheduler.
User can assign a priority from 0 to 7 to a cgroup, and I/O bandwidth will be adjusted proportionally.
This effect is achieved by introducing a certain modifications to CFQ. Now there is not only per process time slice, but also per cgroup time slice. During cgroup's time slice only processes from current cgroup can add requests to the queue. Inside cgroups's time slice processes are managed based on (per-process) time slices (as usual in CFQ). This is why we call this approach "two level CFQ".

Such kind of system works in OpenVZ project.

Patch is against 2.6.25-rc2-mm1

Comments, suggestions, criticism are all welcome.