From: Linus Torvalds <torvalds@linux-foundation.org>
Date: Tue, 9 Jul 2019 04:35:12 +0000 (-0700)
Subject: Merge branch 'for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
X-Git-Tag: tags/kvm-5.3-2~96
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=92c1d6522135050cb377a18cc6e30d08dfb87efb;p=users%2Fdwmw2%2Flinux.git

Merge branch 'for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup

Pull cgroup updates from Tejun Heo:
 "Documentation updates and the addition of cgroup_parse_float() which
  will be used by new controllers including blk-iocost"

* 'for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
  docs: cgroup-v1: convert docs to ReST and rename to *.rst
  cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS
  cgroup: add cgroup_parse_float()
---

92c1d6522135050cb377a18cc6e30d08dfb87efb
diff --cc Documentation/cgroup-v1/blkio-controller.rst
index d1a1b7bdd03ad,2c1b907afc147..fd3184537d238
--- a/Documentation/cgroup-v1/blkio-controller.rst
+++ b/Documentation/cgroup-v1/blkio-controller.rst
@@@ -15,15 -19,71 +17,18 @@@ level logical devices like device mappe
  
  HOWTO
  =====
 -Proportional Weight division of bandwidth
 ------------------------------------------
 -You can do a very simple testing of running two dd threads in two different
 -cgroups. Here is what you can do.
 -
 -- Enable Block IO controller::
 -
 -	CONFIG_BLK_CGROUP=y
 -
 -- Enable group scheduling in CFQ:
 -
 -
 -	CONFIG_CFQ_GROUP_IOSCHED=y
 -
 -- Compile and boot into kernel and mount IO controller (blkio); see
 -  cgroups.txt, Why are cgroups needed?.
 -
 -  ::
 -
 -	mount -t tmpfs cgroup_root /sys/fs/cgroup
 -	mkdir /sys/fs/cgroup/blkio
 -	mount -t cgroup -o blkio none /sys/fs/cgroup/blkio
 -
 -- Create two cgroups::
 -
 -	mkdir -p /sys/fs/cgroup/blkio/test1/ /sys/fs/cgroup/blkio/test2
 -
 -- Set weights of group test1 and test2::
 -
 -	echo 1000 > /sys/fs/cgroup/blkio/test1/blkio.weight
 -	echo 500 > /sys/fs/cgroup/blkio/test2/blkio.weight
 -
 -- Create two same size files (say 512MB each) on same disk (file1, file2) and
 -  launch two dd threads in different cgroup to read those files::
 -
 -	sync
 -	echo 3 > /proc/sys/vm/drop_caches
 -
 -	dd if=/mnt/sdb/zerofile1 of=/dev/null &
 -	echo $! > /sys/fs/cgroup/blkio/test1/tasks
 -	cat /sys/fs/cgroup/blkio/test1/tasks
 -
 -	dd if=/mnt/sdb/zerofile2 of=/dev/null &
 -	echo $! > /sys/fs/cgroup/blkio/test2/tasks
 -	cat /sys/fs/cgroup/blkio/test2/tasks
 -
 -- At macro level, first dd should finish first. To get more precise data, keep
 -  on looking at (with the help of script), at blkio.disk_time and
 -  blkio.disk_sectors files of both test1 and test2 groups. This will tell how
 -  much disk time (in milliseconds), each group got and how many sectors each
 -  group dispatched to the disk. We provide fairness in terms of disk time, so
 -  ideally io.disk_time of cgroups should be in proportion to the weight.
 -
  Throttling/Upper Limit policy
  -----------------------------
- - Enable Block IO controller
+ - Enable Block IO controller::
+ 
  	CONFIG_BLK_CGROUP=y
  
- - Enable throttling in block layer
+ - Enable throttling in block layer::
+ 
  	CONFIG_BLK_DEV_THROTTLING=y
  
- - Mount blkio controller (see cgroups.txt, Why are cgroups needed?)
+ - Mount blkio controller (see cgroups.txt, Why are cgroups needed?)::
+ 
          mount -t cgroup -o blkio none /sys/fs/cgroup/blkio
  
  - Specify a bandwidth rate on particular device for root group. The format