[systemd-commits] 3 commits - Makefile-man.am man/loginctl.xml man/machinectl.xml man/pam_systemd.xml man/systemctl.xml man/systemd-cgls.xml man/systemd-cgtop.xml man/systemd-system.conf.xml man/systemd.cgroup.xml man/systemd.exec.xml man/systemd.mount.xml man/systemd.resource-control.xml man/systemd.scope.xml man/systemd.service.xml man/systemd.slice.xml man/systemd.socket.xml man/systemd.swap.xml man/systemd.unit.xml src/core src/systemctl
Lennart Poettering
lennart at kemper.freedesktop.org
Thu Sep 26 15:12:52 PDT 2013
Makefile-man.am | 2
man/loginctl.xml | 4
man/machinectl.xml | 4
man/pam_systemd.xml | 2
man/systemctl.xml | 14 -
man/systemd-cgls.xml | 6
man/systemd-cgtop.xml | 36 +---
man/systemd-system.conf.xml | 27 ---
man/systemd.cgroup.xml | 350 ---------------------------------------
man/systemd.exec.xml | 2
man/systemd.mount.xml | 6
man/systemd.resource-control.xml | 348 ++++++++++++++++++++++++++++++++++++++
man/systemd.scope.xml | 2
man/systemd.service.xml | 6
man/systemd.slice.xml | 22 +-
man/systemd.socket.xml | 12 -
man/systemd.swap.xml | 6
man/systemd.unit.xml | 5
src/core/dbus-manager.c | 27 ---
src/core/system.conf | 3
src/core/user.conf | 1
src/systemctl/systemctl.c | 9 -
22 files changed, 420 insertions(+), 474 deletions(-)
New commits:
commit 68372da693edb69a0881698ba9d0893bfddc9435
Author: Lennart Poettering <lennart at poettering.net>
Date: Fri Sep 27 00:11:54 2013 +0200
systemctl: make sure set-property mangles unit names
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index 8b9183d..eede616 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -3829,7 +3829,8 @@ static int append_assignment(DBusMessageIter *iter, const char *assignment) {
static int set_property(DBusConnection *bus, char **args) {
- _cleanup_free_ DBusMessage *m = NULL, *reply = NULL;
+ _cleanup_dbus_message_unref_ DBusMessage *m = NULL, *reply = NULL;
+ _cleanup_free_ char *n = NULL;
DBusMessageIter iter, sub;
dbus_bool_t runtime;
DBusError error;
@@ -3850,7 +3851,11 @@ static int set_property(DBusConnection *bus, char **args) {
runtime = arg_runtime;
- if (!dbus_message_iter_append_basic(&iter, DBUS_TYPE_STRING, &args[1]) ||
+ n = unit_name_mangle(args[1]);
+ if (!n)
+ return log_oom();
+
+ if (!dbus_message_iter_append_basic(&iter, DBUS_TYPE_STRING, &n) ||
!dbus_message_iter_append_basic(&iter, DBUS_TYPE_BOOLEAN, &runtime) ||
!dbus_message_iter_open_container(&iter, DBUS_TYPE_ARRAY, "(sv)", &sub))
return log_oom();
commit 3fde5f30bda2a70d97f3dc8fa918e42e1c07cc2c
Author: Lennart Poettering <lennart at poettering.net>
Date: Fri Sep 27 00:05:07 2013 +0200
man: drop references to "cgroup" wher appropriate
Since cgroups are mostly now an implementation detail of systemd lets
deemphasize it a bit in the man pages. This renames systemd.cgroup(5) to
systemd.resource-control(5) and uses the term "resource control" rather
than "cgroup" where appropriate.
This leaves the word "cgroup" in at a couple of places though, like for
example systemd-cgtop and systemd-cgls where cgroup stuff is at the core
of what is happening.
diff --git a/Makefile-man.am b/Makefile-man.am
index 1f63595..c8a4342 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -78,7 +78,6 @@ MANPAGES += \
man/systemd-update-utmp.service.8 \
man/systemd.1 \
man/systemd.automount.5 \
- man/systemd.cgroup.5 \
man/systemd.device.5 \
man/systemd.exec.5 \
man/systemd.journal-fields.7 \
@@ -86,6 +85,7 @@ MANPAGES += \
man/systemd.mount.5 \
man/systemd.path.5 \
man/systemd.preset.5 \
+ man/systemd.resource-control.5 \
man/systemd.scope.5 \
man/systemd.service.5 \
man/systemd.slice.5 \
diff --git a/man/loginctl.xml b/man/loginctl.xml
index ef0dfc0..1b54ff7 100644
--- a/man/loginctl.xml
+++ b/man/loginctl.xml
@@ -117,8 +117,8 @@
<term><option>-l</option></term>
<term><option>--full</option></term>
- <listitem><para>Do not ellipsize cgroup
- members.</para>
+ <listitem><para>Do not ellipsize
+ process tree entries.</para>
</listitem>
</varlistentry>
diff --git a/man/machinectl.xml b/man/machinectl.xml
index 5efa3a5..2ed9f2e 100644
--- a/man/machinectl.xml
+++ b/man/machinectl.xml
@@ -117,8 +117,8 @@
<term><option>-l</option></term>
<term><option>--full</option></term>
- <listitem><para>Do not ellipsize cgroup
- members.</para>
+ <listitem><para>Do not ellipsize
+ process tree entries.</para>
</listitem>
</varlistentry>
diff --git a/man/pam_systemd.xml b/man/pam_systemd.xml
index 951ae20..0e25a4a 100644
--- a/man/pam_systemd.xml
+++ b/man/pam_systemd.xml
@@ -55,7 +55,7 @@
<title>Description</title>
<para><command>pam_systemd</command> registers user
- sessions in the systemd login manager
+ sessions with the systemd login manager
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
and hence the systemd control group hierarchy.</para>
diff --git a/man/systemctl.xml b/man/systemctl.xml
index 32bcf03..e789d4b 100644
--- a/man/systemctl.xml
+++ b/man/systemctl.xml
@@ -174,7 +174,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
<term><option>--full</option></term>
<listitem>
- <para>Do not ellipsize unit names, cgroup members, and
+ <para>Do not ellipsize unit names, process tree entries, and
truncate unit descriptions in the output of
<command>list-units</command> and
<command>list-jobs</command>.</para>
@@ -711,14 +711,14 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
<listitem>
<para>Set the specified unit properties at runtime where
this is supported. This allows changing configuration
- parameter properties such as resource management controls at
+ parameter properties such as resource control settings at
runtime. Not all properties may be changed at runtime, but
- many resource management settings (primarily those in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
+ many resource control settings (primarily those in
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
may. The changes are applied instantly, and stored on disk
for future boots, unless <option>--runtime</option> is
- passed, in which case the settings only apply until the next
- reboot. The syntax of the property assignment follows
+ passed, in which case the settings only apply until the
+ next reboot. The syntax of the property assignment follows
closely the syntax of assignments in unit files.</para>
<para>Example: <command>systemctl set-property foobar.service CPUShares=777</command></para>
@@ -1290,7 +1290,7 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-management</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>
diff --git a/man/systemd-cgls.xml b/man/systemd-cgls.xml
index fcaf894..432706b 100644
--- a/man/systemd-cgls.xml
+++ b/man/systemd-cgls.xml
@@ -116,8 +116,8 @@
<term><option>-l</option></term>
<term><option>--full</option></term>
- <listitem><para>Do not ellipsize cgroup
- members.</para>
+ <listitem><para>Do not ellipsize
+ process tree members.</para>
</listitem>
</varlistentry>
@@ -132,7 +132,7 @@
<term><option>-m <replaceable>MACHINE</replaceable></option></term>
<term><option>--machine=<replaceable>MACHINE</replaceable></option></term>
- <listitem><para>Limit cgroups shown to
+ <listitem><para>Limit control groups shown to
the part corresponding to the
container <replaceable>MACHINE</replaceable>.
</para></listitem>
diff --git a/man/systemd-cgtop.xml b/man/systemd-cgtop.xml
index 51549c4..7faedfb 100644
--- a/man/systemd-cgtop.xml
+++ b/man/systemd-cgtop.xml
@@ -80,7 +80,7 @@
<varname>MemoryAccounting=1</varname> and
<varname>BlockIOAccounting=1</varname> settings in the
unit files in question (See
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>
for details).</para>
<para>To emphasize this: unless
@@ -274,7 +274,7 @@
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>
</para>
</refsect1>
diff --git a/man/systemd.cgroup.xml b/man/systemd.cgroup.xml
deleted file mode 100644
index ac58962..0000000
--- a/man/systemd.cgroup.xml
+++ /dev/null
@@ -1,350 +0,0 @@
-<?xml version='1.0'?> <!--*-nxml-*-->
-<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
-
-<!--
-This file is part of systemd.
-
-Copyright 2013 Zbigniew JÄdrzejewski-Szmek
-
-systemd is free software; you can redistribute it and/or modify it
-under the terms of the GNU Lesser General Public License as published by
-the Free Software Foundation; either version 2.1 of the License, or
-(at your option) any later version.
-
-systemd is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-Lesser General Public License for more details.
-
-You should have received a copy of the GNU Lesser General Public License
-along with systemd; If not, see <http://www.gnu.org/licenses/>.
--->
-
-<refentry id="systemd.cgroup">
- <refentryinfo>
- <title>systemd.cgroup</title>
- <productname>systemd</productname>
-
- <authorgroup>
- <author>
- <contrib>Developer</contrib>
- <firstname>Lennart</firstname>
- <surname>Poettering</surname>
- <email>lennart at poettering.net</email>
- </author>
- </authorgroup>
- </refentryinfo>
-
- <refmeta>
- <refentrytitle>systemd.cgroup</refentrytitle>
- <manvolnum>5</manvolnum>
- </refmeta>
-
- <refnamediv>
- <refname>systemd.cgroup</refname>
- <refpurpose>Control Group configuration unit settings</refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <para>
- <filename><replaceable>slice</replaceable>.slice</filename>,
- <filename><replaceable>scope</replaceable>.scope</filename>,
- <filename><replaceable>service</replaceable>.service</filename>,
- <filename><replaceable>socket</replaceable>.socket</filename>,
- <filename><replaceable>mount</replaceable>.mount</filename>,
- <filename><replaceable>swap</replaceable>.swap</filename>
- </para>
- </refsynopsisdiv>
-
- <refsect1>
- <title>Description</title>
-
- <para>Unit configuration files for services, slices, scopes,
- sockets, mount points, and swap devices share a subset of
- configuration options which configure the control group settings
- for spawned processes.</para>
-
- <para>Control Groups is a concept for organizing processes in a
- hierarch tree of named groups for the purpose of resource
- management.</para>
-
- <para>This man page lists the configuration options shared by
- those six unit types. See
- <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
- for the common options of all unit configuration files, and
- <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- and
- <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>
- for more information on the specific unit configuration files. The
- execution-specific configuration options are configured in the
- [Slice], [Scope], [Service], [Socket], [Mount], or [Swap]
- sections, depending on the unit type.</para>
- </refsect1>
-
- <refsect1>
- <title>Options</title>
-
- <para>Units of the types listed above can have settings
- for cgroup configuration:</para>
-
- <variablelist class='unit-directives'>
-
- <varlistentry>
- <term><varname>CPUAccounting=</varname></term>
-
- <listitem>
- <para>Turn on CPU usage accounting for this unit. Takes a
- boolean argument. Note that turning on CPU accounting for
- one unit might also implicitly turn it on for all units
- contained in the same slice and for all its parent slices and
- the units contained therein.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>CPUShares=<replaceable>weight</replaceable></varname></term>
-
- <listitem>
- <para>Assign the specified overall CPU time share weight to
- the processes executed. Takes an integer value. This
- controls the <literal>cpu.shares</literal> control group
- attribute, which defaults to 1024. For details about this
- control group attribute, see <ulink
- url="https://www.kernel.org/doc/Documentation/scheduler/sched-design-CFS.txt">sched-design-CFS.txt</ulink>.</para>
-
- <para>Implies <literal>CPUAccounting=true</literal>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>MemoryAccounting=</varname></term>
-
- <listitem>
- <para>Turn on process and kernel memory accounting for this
- unit. Takes a boolean argument. Note that turning on memory
- accounting for one unit might also implicitly turn it on for
- all units contained in the same slice and for all its parent
- slices and the units contained therein.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>MemoryLimit=<replaceable>bytes</replaceable></varname></term>
-
- <listitem>
- <para>Specify the limit on maximum memory usage of the
- executed processes. The limit specifies how much process and
- kernel memory can be used by tasks in this unit. Takes a
- memory size in bytes. If the value is suffixed with K, M, G
- or T, the specified memory size is parsed as Kilobytes,
- Megabytes, Gigabytes, or Terabytes (with the base 1024),
- respectively. This controls the
- <literal>memory.limit_in_bytes</literal> control group
- attribute. For details about this control group attribute,
- see <ulink
- url="https://www.kernel.org/doc/Documentation/cgroups/memory.txt">memory.txt</ulink>.</para>
-
- <para>Implies <literal>MemoryAccounting=true</literal>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>BlockIOAccounting=</varname></term>
-
- <listitem>
- <para>Turn on Block IO accounting for this unit. Takes a
- boolean argument. Note that turning on block IO accounting
- for one unit might also implicitly turn it on for all units
- contained in the same slice and all for its parent slices and
- the units contained therein.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>BlockIOWeight=<replaceable>weight</replaceable></varname></term>
-
- <listitem><para>Set the default
- overall block IO weight for the
- executed processes. Takes a single
- weight value (between 10 and 1000) to
- set the default block IO weight. This
- controls the
- <literal>blkio.weight</literal>
- control group attribute, which
- defaults to 1000. For details about
- this control group attribute, see
- <ulink
- url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.</para>
-
- <para>Implies
- <literal>BlockIOAccounting=true</literal>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>BlockIODeviceWeight=<replaceable>device</replaceable> <replaceable>weight</replaceable></varname></term>
-
- <listitem>
- <para>Set the per-device overall block IO weight for the
- executed processes. Takes a space-separated pair of a file
- path and a weight value to specify the device specific
- weight value, between 10 and 1000. (Example: "/dev/sda
- 500"). 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>blkio.weight_device</literal> control group
- attribute, which defaults to 1000. 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/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.</para>
-
- <para>Implies
- <literal>BlockIOAccounting=true</literal>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>BlockIOReadBandwidth=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
- <term><varname>BlockIOWriteBandwidth=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
-
- <listitem>
- <para>Set the per-device overall block IO bandwidth limit
- for the executed processes. 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 (Example:
- "/dev/disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0 5M"). This
- controls the <literal>blkio.read_bps_device</literal> and
- <literal>blkio.write_bps_device</literal> control group
- attributes. Use this option multiple times to set bandwidth
- limits for multiple devices. For details about these control
- group attributes, see
- <ulink url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.
- </para>
-
- <para>Implies
- <literal>BlockIOAccounting=true</literal>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>DeviceAllow=</varname></term>
-
- <listitem>
- <para>Control access to specific device nodes by the
- executed processes. Takes two space-separated strings: a
- device node path (such as <filename>/dev/null</filename>)
- followed by a combination of <constant>r</constant>,
- <constant>w</constant>, <constant>m</constant> to control
- <emphasis>r</emphasis>eading, <emphasis>w</emphasis>riting,
- or creation of the specific device node by the unit
- (<emphasis>m</emphasis>knod), respectively. This controls
- the <literal>devices.allow</literal> and
- <literal>devices.deny</literal> control group
- attributes. For details about these control group attributes,
- see <ulink
- url="https://www.kernel.org/doc/Documentation/cgroups/devices.txt">devices.txt</ulink>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>DevicePolicy=auto|closed|strict</varname></term>
-
- <listitem>
- <para>
- Control the policy for allowing device access:
- </para>
- <variablelist>
- <varlistentry>
- <term><option>strict</option></term>
- <listitem>
- <para>means to only allow types of access that are
- explicitly specified.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><option>closed</option></term>
- <listitem>
- <para>in addition, allows access to standard pseudo
- devices including
- <filename>/dev/null</filename>,
- <filename>/dev/zero</filename>,
- <filename>/dev/full</filename>,
- <filename>/dev/random</filename>, and
- <filename>/dev/urandom</filename>.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><option>auto</option></term>
- <listitem>
- <para>
- in addition, allows access to all devices if no
- explicit <varname>DeviceAllow=</varname> is present.
- This is the default.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>Slice=</varname></term>
-
- <listitem>
- <para>The name of the slice unit to place the unit
- in. Defaults to <filename>system.slice</filename> for all
- non-instantiated units of all unit types (except for slice
- units themselves see below). Instance units are by default
- placed in a subslice of <filename>system.slice</filename>
- that is named after the template name.</para>
-
- <para>This option may be used to arrange systemd units in a
- hierarchy of slices each of which might have resource
- settings applied.</para>
-
- <para>For units of type slice, the only accepted value for
- this setting is the parent slice. Since the name of a slice
- unit implies the parent slice, it is hence redundant to ever
- set this parameter directly for slice units.</para>
- </listitem>
- </varlistentry>
-
- </variablelist>
- </refsect1>
-
- <refsect1>
- <title>See Also</title>
- <para>
- <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
- The documentation for control groups and specific controllers in the Linux kernel:
- <ulink url="https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt">cgroups.txt</ulink>,
- <ulink url="https://www.kernel.org/doc/Documentation/cgroups/cpuacct.txt">cpuacct.txt</ulink>,
- <ulink url="https://www.kernel.org/doc/Documentation/cgroups/memory.txt">memory.txt</ulink>,
- <ulink url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.
- </para>
- </refsect1>
-</refentry>
diff --git a/man/systemd.exec.xml b/man/systemd.exec.xml
index ba4e808..f50161f 100644
--- a/man/systemd.exec.xml
+++ b/man/systemd.exec.xml
@@ -1108,7 +1108,7 @@
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>exec</refentrytitle><manvolnum>3</manvolnum></citerefentry>
</para>
diff --git a/man/systemd.mount.xml b/man/systemd.mount.xml
index e5b5c3c..48af1ca 100644
--- a/man/systemd.mount.xml
+++ b/man/systemd.mount.xml
@@ -76,8 +76,8 @@
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
which define the way the processes are terminated, and
in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- which configure control group settings for the
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ which configure resource control settings for the
processes of the service. Note that the User= and
Group= options are not particularly useful for mount
units specifying a <literal>Type=</literal> option or
@@ -302,7 +302,7 @@
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>proc</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
diff --git a/man/systemd.resource-control.xml b/man/systemd.resource-control.xml
new file mode 100644
index 0000000..de017a7
--- /dev/null
+++ b/man/systemd.resource-control.xml
@@ -0,0 +1,348 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+This file is part of systemd.
+
+Copyright 2013 Zbigniew JÄdrzejewski-Szmek
+
+systemd is free software; you can redistribute it and/or modify it
+under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or
+(at your option) any later version.
+
+systemd is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd.resource-control">
+ <refentryinfo>
+ <title>systemd.resource-control</title>
+ <productname>systemd</productname>
+
+ <authorgroup>
+ <author>
+ <contrib>Developer</contrib>
+ <firstname>Lennart</firstname>
+ <surname>Poettering</surname>
+ <email>lennart at poettering.net</email>
+ </author>
+ </authorgroup>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>systemd.resource-control</refentrytitle>
+ <manvolnum>5</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>systemd.resource-control</refname>
+ <refpurpose>Resource control unit settings</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <para>
+ <filename><replaceable>slice</replaceable>.slice</filename>,
+ <filename><replaceable>scope</replaceable>.scope</filename>,
+ <filename><replaceable>service</replaceable>.service</filename>,
+ <filename><replaceable>socket</replaceable>.socket</filename>,
+ <filename><replaceable>mount</replaceable>.mount</filename>,
+ <filename><replaceable>swap</replaceable>.swap</filename>
+ </para>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para>Unit configuration files for services, slices, scopes,
+ sockets, mount points, and swap devices share a subset of
+ configuration options for resource control of spawned
+ processes. Internally, this relies on the the Control Groups
+ kernel concept for organizing processes in a hierarchial tree of
+ named groups for the purpose of resource management.</para>
+
+ <para>This man page lists the configuration options shared by
+ those six unit types. See
+ <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ for the common options of all unit configuration files, and
+ <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ and
+ <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ for more information on the specific unit configuration files. The
+ resource control configuration options are configured in the
+ [Slice], [Scope], [Service], [Socket], [Mount], or [Swap]
+ sections, depending on the unit type.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>Options</title>
+
+ <para>Units of the types listed above can have settings
+ for resource control configuration:</para>
+
+ <variablelist class='unit-directives'>
+
+ <varlistentry>
+ <term><varname>CPUAccounting=</varname></term>
+
+ <listitem>
+ <para>Turn on CPU usage accounting for this unit. Takes a
+ boolean argument. Note that turning on CPU accounting for
+ one unit might also implicitly turn it on for all units
+ contained in the same slice and for all its parent slices and
+ the units contained therein.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>CPUShares=<replaceable>weight</replaceable></varname></term>
+
+ <listitem>
+ <para>Assign the specified overall CPU time share weight to
+ the processes executed. Takes an integer value. This
+ controls the <literal>cpu.shares</literal> control group
+ attribute, which defaults to 1024. For details about this
+ control group attribute, see <ulink
+ url="https://www.kernel.org/doc/Documentation/scheduler/sched-design-CFS.txt">sched-design-CFS.txt</ulink>.</para>
+
+ <para>Implies <literal>CPUAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>MemoryAccounting=</varname></term>
+
+ <listitem>
+ <para>Turn on process and kernel memory accounting for this
+ unit. Takes a boolean argument. Note that turning on memory
+ accounting for one unit might also implicitly turn it on for
+ all units contained in the same slice and for all its parent
+ slices and the units contained therein.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>MemoryLimit=<replaceable>bytes</replaceable></varname></term>
+
+ <listitem>
+ <para>Specify the limit on maximum memory usage of the
+ executed processes. The limit specifies how much process and
+ kernel memory can be used by tasks in this unit. Takes a
+ memory size in bytes. If the value is suffixed with K, M, G
+ or T, the specified memory size is parsed as Kilobytes,
+ Megabytes, Gigabytes, or Terabytes (with the base 1024),
+ respectively. This controls the
+ <literal>memory.limit_in_bytes</literal> control group
+ attribute. For details about this control group attribute,
+ see <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroups/memory.txt">memory.txt</ulink>.</para>
+
+ <para>Implies <literal>MemoryAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>BlockIOAccounting=</varname></term>
+
+ <listitem>
+ <para>Turn on Block IO accounting for this unit. Takes a
+ boolean argument. Note that turning on block IO accounting
+ for one unit might also implicitly turn it on for all units
+ contained in the same slice and all for its parent slices and
+ the units contained therein.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>BlockIOWeight=<replaceable>weight</replaceable></varname></term>
+
+ <listitem><para>Set the default
+ overall block IO weight for the
+ executed processes. Takes a single
+ weight value (between 10 and 1000) to
+ set the default block IO weight. This
+ controls the
+ <literal>blkio.weight</literal>
+ control group attribute, which
+ defaults to 1000. For details about
+ this control group attribute, see
+ <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.</para>
+
+ <para>Implies
+ <literal>BlockIOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>BlockIODeviceWeight=<replaceable>device</replaceable> <replaceable>weight</replaceable></varname></term>
+
+ <listitem>
+ <para>Set the per-device overall block IO weight for the
+ executed processes. Takes a space-separated pair of a file
+ path and a weight value to specify the device specific
+ weight value, between 10 and 1000. (Example: "/dev/sda
+ 500"). 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>blkio.weight_device</literal> control group
+ attribute, which defaults to 1000. 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/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.</para>
+
+ <para>Implies
+ <literal>BlockIOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>BlockIOReadBandwidth=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
+ <term><varname>BlockIOWriteBandwidth=<replaceable>device</replaceable> <replaceable>bytes</replaceable></varname></term>
+
+ <listitem>
+ <para>Set the per-device overall block IO bandwidth limit
+ for the executed processes. 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 (Example:
+ "/dev/disk/by-path/pci-0000:00:1f.2-scsi-0:0:0:0 5M"). This
+ controls the <literal>blkio.read_bps_device</literal> and
+ <literal>blkio.write_bps_device</literal> control group
+ attributes. Use this option multiple times to set bandwidth
+ limits for multiple devices. For details about these control
+ group attributes, see
+ <ulink url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.
+ </para>
+
+ <para>Implies
+ <literal>BlockIOAccounting=true</literal>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>DeviceAllow=</varname></term>
+
+ <listitem>
+ <para>Control access to specific device nodes by the
+ executed processes. Takes two space-separated strings: a
+ device node path (such as <filename>/dev/null</filename>)
+ followed by a combination of <constant>r</constant>,
+ <constant>w</constant>, <constant>m</constant> to control
+ <emphasis>r</emphasis>eading, <emphasis>w</emphasis>riting,
+ or creation of the specific device node by the unit
+ (<emphasis>m</emphasis>knod), respectively. This controls
+ the <literal>devices.allow</literal> and
+ <literal>devices.deny</literal> control group
+ attributes. For details about these control group attributes,
+ see <ulink
+ url="https://www.kernel.org/doc/Documentation/cgroups/devices.txt">devices.txt</ulink>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>DevicePolicy=auto|closed|strict</varname></term>
+
+ <listitem>
+ <para>
+ Control the policy for allowing device access:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term><option>strict</option></term>
+ <listitem>
+ <para>means to only allow types of access that are
+ explicitly specified.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>closed</option></term>
+ <listitem>
+ <para>in addition, allows access to standard pseudo
+ devices including
+ <filename>/dev/null</filename>,
+ <filename>/dev/zero</filename>,
+ <filename>/dev/full</filename>,
+ <filename>/dev/random</filename>, and
+ <filename>/dev/urandom</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><option>auto</option></term>
+ <listitem>
+ <para>
+ in addition, allows access to all devices if no
+ explicit <varname>DeviceAllow=</varname> is present.
+ This is the default.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><varname>Slice=</varname></term>
+
+ <listitem>
+ <para>The name of the slice unit to place the unit
+ in. Defaults to <filename>system.slice</filename> for all
+ non-instantiated units of all unit types (except for slice
+ units themselves see below). Instance units are by default
+ placed in a subslice of <filename>system.slice</filename>
+ that is named after the template name.</para>
+
+ <para>This option may be used to arrange systemd units in a
+ hierarchy of slices each of which might have resource
+ settings applied.</para>
+
+ <para>For units of type slice, the only accepted value for
+ this setting is the parent slice. Since the name of a slice
+ unit implies the parent slice, it is hence redundant to ever
+ set this parameter directly for slice units.</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+ The documentation for control groups and specific controllers in the Linux kernel:
+ <ulink url="https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt">cgroups.txt</ulink>,
+ <ulink url="https://www.kernel.org/doc/Documentation/cgroups/cpuacct.txt">cpuacct.txt</ulink>,
+ <ulink url="https://www.kernel.org/doc/Documentation/cgroups/memory.txt">memory.txt</ulink>,
+ <ulink url="https://www.kernel.org/doc/Documentation/cgroups/blkio-controller.txt">blkio-controller.txt</ulink>.
+ </para>
+ </refsect1>
+</refentry>
diff --git a/man/systemd.scope.xml b/man/systemd.scope.xml
index e8fa1ae..9813e0a 100644
--- a/man/systemd.scope.xml
+++ b/man/systemd.scope.xml
@@ -86,7 +86,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
</para>
diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index c06e14e..5e1ddf7 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -76,8 +76,8 @@
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
which define the way the processes of the service are
terminated, and in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- which configure control group settings for the
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ which configure resource control settings for the
processes of the service.</para>
<para>Unless <varname>DefaultDependencies=</varname>
@@ -1007,7 +1007,7 @@
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
</para>
diff --git a/man/systemd.slice.xml b/man/systemd.slice.xml
index b7b0622..4d27ddf 100644
--- a/man/systemd.slice.xml
+++ b/man/systemd.slice.xml
@@ -58,14 +58,14 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
<literal>.slice</literal> encodes information about a slice which
is a concept for hierarchially managing resources of a group of
processes. This management is performed by creating a node in the
- control group tree. Units that manage processes (primarilly scope
- and service units) may be assigned to a specific slice. For each
- slice, certain resource limits may the be set that apply to all
- processes of all units contained in that slice. Slices are
- organized hierarchially in a tree. The name of the slice encodes
- the location in the tree. The name consists of a dash-separated
- series of names, which describes the path to the slice from the
- root slice. The root slice is named,
+ Linux Control Group (cgroup) tree. Units that manage processes
+ (primarilly scope and service units) may be assigned to a specific
+ slice. For each slice, certain resource limits may the be set that
+ apply to all processes of all units contained in that
+ slice. Slices are organized hierarchially in a tree. The name of
+ the slice encodes the location in the tree. The name consists of a
+ dash-separated series of names, which describes the path to the
+ slice from the root slice. The root slice is named,
<filename>-.slice</filename>. Example:
<filename>foo-bar.slice</filename> is a slice that is located
within <filename>foo.slice</filename>, which in turn is located in
@@ -89,9 +89,9 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
files. The common configuration items are configured
in the generic [Unit] and [Install] sections. The
slice specific configuration options are configured in
- the [Slice] section. Currently, only generic cgroup settings
+ the [Slice] section. Currently, only generic resource control settings
as described in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>7</manvolnum></citerefentry> are allowed.
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>7</manvolnum></citerefentry> are allowed.
</para>
<para>Unless <varname>DefaultDependencies=false</varname>
@@ -110,7 +110,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
<para>
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
diff --git a/man/systemd.socket.xml b/man/systemd.socket.xml
index 419a38c..8c88d9f 100644
--- a/man/systemd.socket.xml
+++ b/man/systemd.socket.xml
@@ -78,11 +78,11 @@
<option>ExecStopPost=</option> commands are executed
in, and in
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- which define the way the processes are
- terminated, and in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- which configure control group settings for the
- processes of the service.</para>
+ which define the way the processes are terminated, and
+ in
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ which configure resource control settings for the
+ processes of the socket.</para>
<para>For each socket file a matching service file
(see
@@ -712,7 +712,7 @@
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
</para>
diff --git a/man/systemd.swap.xml b/man/systemd.swap.xml
index 18ef5b0..813ae6c 100644
--- a/man/systemd.swap.xml
+++ b/man/systemd.swap.xml
@@ -76,8 +76,8 @@
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
which define the way the processes are
terminated, and in
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- which configure control group settings for the
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ which configure resource control settings for the
processes of the service.</para>
<para>Swap units must be named after the devices
@@ -206,7 +206,7 @@
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
commit 7ac807320a7416463d7ff3ef6ede574863a601c5
Author: Lennart Poettering <lennart at poettering.net>
Date: Thu Sep 26 22:49:44 2013 +0200
core: drop some out-of-date references to cgroup settings
diff --git a/man/systemd-cgtop.xml b/man/systemd-cgtop.xml
index 0e9e5e6..51549c4 100644
--- a/man/systemd-cgtop.xml
+++ b/man/systemd-cgtop.xml
@@ -73,30 +73,23 @@
only accounted for control groups in the
<literal>cpuacct</literal> hierarchy, memory usage
only for those in <literal>memory</literal> and disk
- I/O usage for those in
- <literal>blkio</literal>. <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
- by default places all services in their own control
- group in the <literal>cpuacct</literal> hierarchy, but
- not in <literal>memory</literal> nor
- <literal>blkio</literal>. If resource monitoring for
- these resources is required, it is recommended to add
- <literal>blkio</literal> and <literal>memory</literal>
- to the <varname>DefaultControllers=</varname> setting
- in <filename>/etc/systemd/system.conf</filename> (see
- <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
- for details). Alternatively, it is possible to enable
- resource accounting individually for services, by
- making use of the <varname>ControlGroup=</varname>
- option in the unit files (See
- <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ I/O usage for those in <literal>blkio</literal>. If
+ resource monitoring for these resources is required,
+ it is recommended to add the
+ <varname>CPUAccounting=1</varname>,
+ <varname>MemoryAccounting=1</varname> and
+ <varname>BlockIOAccounting=1</varname> settings in the
+ unit files in question (See
+ <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>
for details).</para>
<para>To emphasize this: unless
- <literal>blkio</literal> and <literal>memory</literal>
- are enabled for the services in question with either
- of the options suggested above no resource accounting
- will be available for system services and the data shown
- by <command>systemd-cgtop</command> will be
+ <literal>CPUAccounting=1</literal>,
+ <literal>MemoryAccounting=1</literal> and
+ <literal>BlockIOAccounting=1</literal> are enabled for
+ the services in question no resource accounting will
+ be available for system services and the data shown by
+ <command>systemd-cgtop</command> will be
incomplete.</para>
</refsect1>
@@ -281,6 +274,7 @@
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd.cgroup</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>
</para>
</refsect1>
diff --git a/man/systemd-system.conf.xml b/man/systemd-system.conf.xml
index c52e590..e8cf8a9 100644
--- a/man/systemd-system.conf.xml
+++ b/man/systemd-system.conf.xml
@@ -104,32 +104,7 @@
</varlistentry>
<varlistentry>
- <term><varname>DefaultControllers=cpu</varname></term>
-
- <listitem><para>Configures in which
- control group hierarchies to create
- per-service cgroups automatically, in
- addition to the
- <literal>name=systemd</literal> named
- hierarchy. Defaults to
- <literal>cpu</literal>. Takes a
- space-separated list of controller
- names. Pass the empty string to ensure
- that systemd does not touch any
- hierarchies but its own.</para>
-
- <para>Note that the default value of
- 'cpu' will make realtime scheduling
- unavailable to system services. See
- <ulink
- url="http://www.freedesktop.org/wiki/Software/systemd/MyServiceCantGetRealtime">My
- Service Can't Get Realtime!</ulink>
- for more
- information.</para></listitem>
- </varlistentry>
-
- <varlistentry>
- <term><varname>JoinControllers=cpu,cpuacct,cpuset net_cls,netprio</varname></term>
+ <term><varname>JoinControllers=cpu,cpuacct net_cls,netprio</varname></term>
<listitem><para>Configures controllers
that shall be mounted in a single
diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml
index d61426a..5c8b8e8 100644
--- a/man/systemd.unit.xml
+++ b/man/systemd.unit.xml
@@ -1241,7 +1241,10 @@
<row>
<entry><literal>%R</literal></entry>
<entry>Parent directory of the control group path where units are placed.</entry>
- <entry>For system instances this usually resolves to <filename>/</filename>, except in containers, where this resolves to the container's root directory. This specifier is particularly useful in the <varname>ControlGroup=</varname> setting (see <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>).</entry>
+ <entry>For system instances this usually
+ resolves to <filename>/</filename>, except in
+ containers, where this resolves to the
+ container's root directory.</entry>
</row>
<row>
<entry><literal>%t</literal></entry>
diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c
index 75e2e45..676a07f 100644
--- a/src/core/dbus-manager.c
+++ b/src/core/dbus-manager.c
@@ -103,32 +103,6 @@
" <method name=\"ResetFailedUnit\">\n" \
" <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
" </method>\n" \
- " <method name=\"SetUnitControlGroup\">\n" \
- " <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"group\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"mode\" type=\"s\" direction=\"in\"/>\n" \
- " </method>\n" \
- " <method name=\"UnsetUnitControlGroup\">\n" \
- " <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"group\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"mode\" type=\"s\" direction=\"in\"\n/>" \
- " </method>\n" \
- " <method name=\"GetUnitControlGroupAttribute\">\n" \
- " <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"attribute\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"values\" type=\"as\" direction=\"out\"/>\n" \
- " </method>\n" \
- " <method name=\"SetUnitControlGroupAttribute\">\n" \
- " <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"attribute\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"values\" type=\"as\" direction=\"in\"/>\n" \
- " <arg name=\"mode\" type=\"s\" direction=\"in\"\n/>" \
- " </method>\n" \
- " <method name=\"UnsetUnitControlGroupAttributes\">\n" \
- " <arg name=\"name\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"attribute\" type=\"s\" direction=\"in\"/>\n" \
- " <arg name=\"mode\" type=\"s\" direction=\"in\"/>\n" \
- " </method>\n" \
" <method name=\"GetJob\">\n" \
" <arg name=\"id\" type=\"u\" direction=\"in\"/>\n" \
" <arg name=\"job\" type=\"o\" direction=\"out\"/>\n" \
@@ -316,7 +290,6 @@
" <property name=\"ConfirmSpawn\" type=\"b\" access=\"read\"/>\n" \
" <property name=\"ShowStatus\" type=\"b\" access=\"read\"/>\n" \
" <property name=\"UnitPath\" type=\"as\" access=\"read\"/>\n" \
- " <property name=\"DefaultControllers\" type=\"as\" access=\"read\"/>\n" \
" <property name=\"DefaultStandardOutput\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"DefaultStandardError\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"RuntimeWatchdogUSec\" type=\"t\" access=\"readwrite\"/>\n" \
diff --git a/src/core/system.conf b/src/core/system.conf
index f2817bc..7b03c87 100644
--- a/src/core/system.conf
+++ b/src/core/system.conf
@@ -17,10 +17,9 @@
#ShowStatus=yes
#CrashChVT=1
#CPUAffinity=1 2
-#DefaultControllers=cpu
#DefaultStandardOutput=journal
#DefaultStandardError=inherit
-#JoinControllers=cpu,cpuacct,cpuset net_cls,net_prio
+#JoinControllers=cpu,cpuacct net_cls,net_prio
#RuntimeWatchdogSec=0
#ShutdownWatchdogSec=10min
#CapabilityBoundingSet=
diff --git a/src/core/user.conf b/src/core/user.conf
index 4252451..4a0129a 100644
--- a/src/core/user.conf
+++ b/src/core/user.conf
@@ -12,6 +12,5 @@
#LogTarget=console
#LogColor=yes
#LogLocation=no
-#DefaultControllers=cpu
#DefaultStandardOutput=inherit
#DefaultStandardError=inherit
More information about the systemd-commits
mailing list