summaryrefslogtreecommitdiff
path: root/man/systemd.resource-control.xml
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2016-05-16 22:05:27 +0200
committerLennart Poettering <lennart@poettering.net>2016-05-16 22:05:27 +0200
commit3103459e9083555d1b52fb6a212a5c6ad1f98b95 (patch)
tree264ef0cd7cc1b2c5f67d256c6a9a655d588922b9 /man/systemd.resource-control.xml
parenta87c45a84b080906c1ccaa154821e70184c39ec1 (diff)
parent13c31542cc57e1454dccd6383bfdac98cbee5bb1 (diff)
Merge pull request #3193 from htejun/cgroup-io-controller
core: add io controller support on the unified hierarchy
Diffstat (limited to 'man/systemd.resource-control.xml')
-rw-r--r--man/systemd.resource-control.xml108
1 files changed, 105 insertions, 3 deletions
diff --git a/man/systemd.resource-control.xml b/man/systemd.resource-control.xml
index fd6f7a1b69..4edb1a25a8 100644
--- a/man/systemd.resource-control.xml
+++ b/man/systemd.resource-control.xml
@@ -249,9 +249,103 @@
</varlistentry>
<varlistentry>
+ <term><varname>IOAccounting=</varname></term>
+
+ <listitem>
+ <para>Turn on Block I/O accounting for this unit on unified
+ hierarchy. Takes a boolean argument. Note that turning on
+ block I/O accounting for one unit will also implicitly turn
+ it on for all units contained in the same slice and all for
+ its parent slices and the units contained therein. The
+ system default for this setting may be controlled with
+ <varname>DefaultIOAccounting=</varname> in
+ <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>IOWeight=<replaceable>weight</replaceable></varname></term>
+ <term><varname>StartupIOWeight=<replaceable>weight</replaceable></varname></term>
+
+ <listitem>
+ <para>Set the default overall block I/O weight for the
+ executed processes on unified hierarchy. Takes a single
+ weight value (between 1 and 10000) to set the default block
+ I/O weight. This controls the <literal>io.weight</literal>
+ control group attribute, which defaults to 100. For details
+ about this control group attribute, see <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroup-v2.txt">cgroup-v2.txt</ulink>.
+ The available I/O bandwidth is split up among all units
+ within one slice relative to their block I/O weight.</para>
+
+ <para>While <varname>StartupIOWeight=</varname> only applies
+ to the startup phase of the system,
+ <varname>IOWeight=</varname> applies to the later runtime of
+ the system, and if the former is not set also to the startup
+ phase. This allows prioritizing specific services at boot-up
+ differently than during runtime.</para>
+
+ <para>Implies <literal>IOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>IODeviceWeight=<replaceable>device</replaceable> <replaceable>weight</replaceable></varname></term>
+
+ <listitem>
+ <para>Set the per-device overall block I/O weight for the
+ executed processes on unified hierarchy. Takes a
+ space-separated pair of a file path and a weight value to
+ specify the device specific weight value, between 1 and
+ 10000. (Example: "/dev/sda 1000"). The file path may be
+ specified as path to a block device node or as any other
+ file, in which case the backing block device of the file
+ system of the file is determined. This controls the
+ <literal>io.weight</literal> control group attribute, which
+ defaults to 100. Use this option multiple times to set
+ weights for multiple devices. For details about this control
+ group attribute, see <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroup-v2.txt">cgroup-v2.txt</ulink>.</para>
+
+ <para>Implies <literal>IOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>IOReadBandwidthMax=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
+ <term><varname>IOWriteBandwidthMax=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
+
+ <listitem>
+ <para>Set the per-device overall block I/O bandwidth maximum
+ limit for the executed processes on unified hierarchy. This
+ limit is not work-conserving and the executed processes are
+ not allowed to use more even if the device has idle
+ capacity. Takes a space-separated pair of a file path and a
+ bandwidth value (in bytes per second) to specify the device
+ specific bandwidth. The file path may be a path to a block
+ device node, or as any other file in which case the backing
+ block device of the file system of the file is used. If the
+ bandwidth is suffixed with K, M, G, or T, the specified
+ bandwidth is parsed as Kilobytes, Megabytes, Gigabytes, or
+ Terabytes, respectively, to the base of 1000. (Example:
+ "/dev/disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0 5M"). This
+ controls the <literal>io.max</literal> control group
+ attributes. Use this option multiple times to set bandwidth
+ limits for multiple devices. For details about this control
+ group attribute, see <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroup-v2.txt">cgroup-v2.txt</ulink>.
+ </para>
+
+ <para>Implies <literal>IOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><varname>BlockIOAccounting=</varname></term>
<listitem>
+ <para>Use IOAccounting on unified hierarchy.</para>
+
<para>Turn on Block I/O accounting for this unit. Takes a
boolean argument. Note that turning on block I/O accounting
for one unit will also implicitly turn it on for all units
@@ -267,9 +361,12 @@
<term><varname>BlockIOWeight=<replaceable>weight</replaceable></varname></term>
<term><varname>StartupBlockIOWeight=<replaceable>weight</replaceable></varname></term>
- <listitem><para>Set the default overall block I/O weight for
- the executed processes. Takes a single weight value (between
- 10 and 1000) to set the default block I/O weight. This controls
+ <listitem><para>Use IOWeight and StartupIOWeight on unified
+ hierarchy.</para>
+
+ <para>Set the default overall block I/O weight for the
+ executed processes. Takes a single weight value (between 10
+ and 1000) to set the default block I/O weight. This controls
the <literal>blkio.weight</literal> control group attribute,
which defaults to 500. For details about this control group
attribute, see <ulink
@@ -293,6 +390,8 @@
<term><varname>BlockIODeviceWeight=<replaceable>device</replaceable> <replaceable>weight</replaceable></varname></term>
<listitem>
+ <para>Use IODeviceWeight on unified hierarchy.</para>
+
<para>Set the per-device overall block I/O weight for the
executed processes. Takes a space-separated pair of a file
path and a weight value to specify the device specific
@@ -317,6 +416,9 @@
<term><varname>BlockIOWriteBandwidth=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
<listitem>
+ <para>Use IOReadBandwidthMax and IOWriteBandwidthMax on
+ unified hierarchy.</para>
+
<para>Set the per-device overall block I/O bandwidth limit
for the executed processes. Takes a space-separated pair of
a file path and a bandwidth value (in bytes per second) to