summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-09-10 16:35:31 +0200
committerLennart Poettering <lennart@poettering.net>2020-09-11 10:33:13 +0200
commitc6a7924513e6aa1ff8fbd2d4c644a8d14d4d4149 (patch)
treeac9a5a4fcaef12d4f43bea46aab95047351dc708
parent5d0fe4233b98301a2f8644824dd1dec0c5fc3403 (diff)
downloadsystemd-c6a7924513e6aa1ff8fbd2d4c644a8d14d4d4149.tar.gz
man: always document both the ipv4 and the ipv6 sockopt
-rw-r--r--man/daemon.xml50
-rw-r--r--man/systemd.socket.xml45
2 files changed, 40 insertions, 55 deletions
diff --git a/man/daemon.xml b/man/daemon.xml
index 072529eeec..b5ae08473d 100644
--- a/man/daemon.xml
+++ b/man/daemon.xml
@@ -448,37 +448,27 @@
<refsect2>
<title>Other Forms of Activation</title>
- <para>Other forms of activation have been suggested and
- implemented in some systems. However, there are often simpler or
- better alternatives, or they can be put together of combinations
- of the schemes above. Example: Sometimes, it appears useful to
- start daemons or <filename>.socket</filename> units when a
- specific IP address is configured on a network interface,
- because network sockets shall be bound to the address. However,
- an alternative to implement this is by utilizing the Linux
- <constant>IP_FREEBIND</constant> socket option, as accessible
- via <varname>FreeBind=yes</varname> in systemd socket files (see
- <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
- for details). This option, when enabled, allows sockets to be
- bound to a non-local, not configured IP address, and hence
- allows bindings to a particular IP address before it actually
- becomes available, making such an explicit dependency to the
- configured address redundant. Another often suggested trigger
- for service activation is low system load. However, here too, a
- more convincing approach might be to make proper use of features
- of the operating system, in particular, the CPU or I/O scheduler
- of Linux. Instead of scheduling jobs from userspace based on
- monitoring the OS scheduler, it is advisable to leave the
- scheduling of processes to the OS scheduler itself. systemd
- provides fine-grained access to the CPU and I/O schedulers. If a
- process executed by the init system shall not negatively impact
- the amount of CPU or I/O bandwidth available to other processes,
- it should be configured with
+ <para>Other forms of activation have been suggested and implemented in some systems. However, there are
+ often simpler or better alternatives, or they can be put together of combinations of the schemes
+ above. Example: Sometimes, it appears useful to start daemons or <filename>.socket</filename> units
+ when a specific IP address is configured on a network interface, because network sockets shall be bound
+ to the address. However, an alternative to implement this is by utilizing the Linux
+ <constant>IP_FREEBIND</constant>/<constant>IPV6_FREEBIND</constant> socket option, as accessible via
+ <varname>FreeBind=yes</varname> in systemd socket files (see
+ <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry> for
+ details). This option, when enabled, allows sockets to be bound to a non-local, not configured IP
+ address, and hence allows bindings to a particular IP address before it actually becomes available,
+ making such an explicit dependency to the configured address redundant. Another often suggested trigger
+ for service activation is low system load. However, here too, a more convincing approach might be to
+ make proper use of features of the operating system, in particular, the CPU or I/O scheduler of
+ Linux. Instead of scheduling jobs from userspace based on monitoring the OS scheduler, it is advisable
+ to leave the scheduling of processes to the OS scheduler itself. systemd provides fine-grained access
+ to the CPU and I/O schedulers. If a process executed by the init system shall not negatively impact the
+ amount of CPU or I/O bandwidth available to other processes, it should be configured with
<varname>CPUSchedulingPolicy=idle</varname> and/or
- <varname>IOSchedulingClass=idle</varname>. Optionally, this may
- be combined with timer-based activation to schedule background
- jobs during runtime and with minimal impact on the system, and
- remove it from the boot phase itself.</para>
+ <varname>IOSchedulingClass=idle</varname>. Optionally, this may be combined with timer-based activation
+ to schedule background jobs during runtime and with minimal impact on the system, and remove it from
+ the boot phase itself.</para>
</refsect2>
</refsect1>
diff --git a/man/systemd.socket.xml b/man/systemd.socket.xml
index 253da8a6d4..3aff453185 100644
--- a/man/systemd.socket.xml
+++ b/man/systemd.socket.xml
@@ -568,26 +568,23 @@
<varlistentry>
<term><varname>IPTOS=</varname></term>
- <listitem><para>Takes an integer argument controlling the IP
- Type-Of-Service field for packets generated from this socket.
- This controls the IP_TOS socket option (see
- <citerefentry project='die-net'><refentrytitle>ip</refentrytitle><manvolnum>7</manvolnum></citerefentry>
- for details.). Either a numeric string or one of
- <option>low-delay</option>, <option>throughput</option>,
- <option>reliability</option> or <option>low-cost</option> may
- be specified.</para></listitem>
+ <listitem><para>Takes an integer argument controlling the IP Type-Of-Service field for packets
+ generated from this socket. This controls the <constant>IP_TOS</constant> socket option (see
+ <citerefentry
+ project='die-net'><refentrytitle>ip</refentrytitle><manvolnum>7</manvolnum></citerefentry> for
+ details.). Either a numeric string or one of <option>low-delay</option>, <option>throughput</option>,
+ <option>reliability</option> or <option>low-cost</option> may be specified.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>IPTTL=</varname></term>
- <listitem><para>Takes an integer argument controlling the IPv4
- Time-To-Live/IPv6 Hop-Count field for packets generated from
- this socket. This sets the IP_TTL/IPV6_UNICAST_HOPS socket
- options (see
- <citerefentry project='die-net'><refentrytitle>ip</refentrytitle><manvolnum>7</manvolnum></citerefentry>
- and
- <citerefentry project='die-net'><refentrytitle>ipv6</refentrytitle><manvolnum>7</manvolnum></citerefentry>
- for details.)</para></listitem>
+ <listitem><para>Takes an integer argument controlling the IPv4 Time-To-Live/IPv6 Hop-Count field for
+ packets generated from this socket. This sets the
+ <constant>IP_TTL</constant>/<constant>IPV6_UNICAST_HOPS</constant> socket options (see <citerefentry
+ project='die-net'><refentrytitle>ip</refentrytitle><manvolnum>7</manvolnum></citerefentry> and
+ <citerefentry
+ project='die-net'><refentrytitle>ipv6</refentrytitle><manvolnum>7</manvolnum></citerefentry> for
+ details.)</para></listitem>
</varlistentry>
<varlistentry>
@@ -662,20 +659,18 @@
<varlistentry>
<term><varname>FreeBind=</varname></term>
- <listitem><para>Takes a boolean value. Controls whether the
- socket can be bound to non-local IP addresses. This is useful
- to configure sockets listening on specific IP addresses before
- those IP addresses are successfully configured on a network
- interface. This sets the IP_FREEBIND socket option. For
- robustness reasons it is recommended to use this option
- whenever you bind a socket to a specific IP address. Defaults
- to <option>false</option>.</para></listitem>
+ <listitem><para>Takes a boolean value. Controls whether the socket can be bound to non-local IP
+ addresses. This is useful to configure sockets listening on specific IP addresses before those IP
+ addresses are successfully configured on a network interface. This sets the
+ <constant>IP_FREEBIND</constant>/<constant>IPV6_FREEBIND</constant> socket option. For robustness
+ reasons it is recommended to use this option whenever you bind a socket to a specific IP
+ address. Defaults to <option>false</option>.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>Transparent=</varname></term>
<listitem><para>Takes a boolean value. Controls the
- IP_TRANSPARENT socket option. Defaults to
+ <constant>IP_TRANSPARENT</constant>/<constant>IPV6_TRANSPARENT</constant> socket option. Defaults to
<option>false</option>.</para></listitem>
</varlistentry>