1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-26 03:22:00 +03:00

Merge pull request #22968 from keszybz/kernel-4.4

Recommend kernel 4.15 or newer
This commit is contained in:
Lennart Poettering 2022-04-06 12:03:47 +02:00 committed by GitHub
commit 39ff521c99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 42 additions and 18 deletions

56
README
View File

@ -30,14 +30,21 @@ LICENSE:
LGPL-2.1-or-later for all code, exceptions noted in LICENSES/README.md
REQUIREMENTS:
Linux kernel >= 3.15
Linux kernel >= 4.2 for unified cgroup hierarchy support
Linux kernel >= 4.10 for cgroup-bpf egress and ingress hooks
Linux kernel >= 4.15 for cgroup-bpf device hook
Linux kernel >= 4.17 for cgroup-bpf socket address hooks
Linux kernel >= 5.3 for bounded-loops in BPF program
Linux kernel >= 5.4 for signed Verity images support
Linux kernel >= 5.7 for BPF links and the BPF LSM hook
Linux kernel ≥ 3.15
≥ 4.5 for pids controller in cgroup v2
≥ 4.6 for cgroup namespaces
≥ 4.9 for RENAME_NOREPLACE support in vfat
≥ 4.10 for cgroup-bpf egress and ingress hooks
≥ 4.15 for cgroup-bpf device hook and cpu controller in cgroup v2
≥ 4.17 for cgroup-bpf socket address hooks
≥ 5.3 for bounded loops in BPF program
≥ 5.4 for signed Verity images
≥ 5.7 for BPF links and the BPF LSM hook
Kernel versions below 4.15 have significant gaps in functionality and
are not recommended for use with this version of systemd. Taint flag
'old-kernel' will be set. Systemd will most likely still function, but
upstream support and testing are limited.
Kernel Config Options:
CONFIG_DEVTMPFS
@ -330,24 +337,41 @@ SYSV INIT.D SCRIPTS:
Please see src/systemctl/systemd-sysv-install.SKELETON for how this
needs to look like, and provide an implementation at the marked places.
WARNINGS:
WARNINGS and TAINT FLAGS:
systemd will warn during early boot if /usr is not already mounted at
this point (that means: either located on the same file system as / or
already mounted in the initrd). While in systemd itself very little
will break if /usr is on a separate, late-mounted partition, many of
its dependencies very likely will break sooner or later in one form or
will break if /usr is on a separate late-mounted partition, many of its
dependencies very likely will break sooner or later in one form or
another. For example, udev rules tend to refer to binaries in /usr,
binaries that link to libraries in /usr or binaries that refer to data
files in /usr. Since these breakages are not always directly visible,
systemd will warn about this, since this kind of file system setup is
not really supported anymore by the basic set of Linux OS components.
systemd requires that the /run mount point exists. systemd also
requires that /var/run is a symlink to /run.
systemd will warn about this. Such setups are not really supported by
the basic set of Linux OS components. Taint flag 'split-usr' will be
set when this condition is detected.
For more information on this issue consult
https://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
systemd requires that the /run mount point exists. systemd also
requires that /var/run is a symlink to /run. Taint flag 'var-run-bad'
will be set when this condition is detected.
Systemd will also warn when the cgroup support is unavailable in the
kernel (taint flag 'cgroups-missing'), the system is using the old
cgroup hierarchy (taint flag 'cgroupsv1'), the hardware clock is
running in non-UTC mode (taint flag 'local-hwclock'), the kernel
overflow UID or GID are not 65534 (taint flags 'overflowuid-not-65534'
and 'overflowgid-not-65534'), the UID or GID range assigned to the
running systemd instance covers less than 0…65534 (taint flags
'short-uid-range' and 'short-gid-range').
Taint conditions are logged during boot, but may also be checked at any
time with:
busctl get-property org.freedesktop.systemd1 /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager Tainted
VALGRIND:
To run systemd under valgrind, compile with meson option
-Dvalgrind=true and have valgrind development headers installed
(i.e. valgrind-devel or equivalent). Otherwise, false positives will be

View File

@ -74,4 +74,4 @@
/* Path where systemd-oomd listens for varlink connections from user managers to report changes in ManagedOOM settings. */
#define VARLINK_ADDR_PATH_MANAGED_OOM_USER "/run/systemd/oom/io.system.ManagedOOM"
#define KERNEL_BASELINE_VERSION "3.15"
#define KERNEL_BASELINE_VERSION "4.15"

View File

@ -4384,7 +4384,7 @@ char *manager_taint_string(Manager *m) {
buf = new(char, sizeof("split-usr:"
"cgroups-missing:"
"cgrousv1:"
"cgroupsv1:"
"local-hwclock:"
"var-run-bad:"
"overflowuid-not-65534:"