diff --git a/SOURCES/0028-udev-net-setup-link-change-the-default-MACAddressPol.patch b/SOURCES/0028-udev-net-setup-link-change-the-default-MACAddressPol.patch new file mode 100644 index 0000000..e7f152a --- /dev/null +++ b/SOURCES/0028-udev-net-setup-link-change-the-default-MACAddressPol.patch @@ -0,0 +1,53 @@ +From f00cbfd1cf67f28a92863c74ef64a1aedfacabc6 Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 21 Sep 2021 15:01:19 +0200 +Subject: [PATCH] udev/net-setup-link: change the default MACAddressPolicy to + "none" + +While stable MAC address for interface types that don't have the +address provided by HW could be useful it also breaks LACP based bonds. +Let's err on the side of caution and don't change the MAC address from +udev. + +RHEL-only + +Resolves: #2009237 +--- + man/systemd.link.xml | 2 +- + network/99-default.link | 2 +- + test/fuzz/fuzz-link-parser/99-default.link | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/man/systemd.link.xml b/man/systemd.link.xml +index 45cabbccf7..0033e4c28f 100644 +--- a/man/systemd.link.xml ++++ b/man/systemd.link.xml +@@ -961,7 +961,7 @@ + + [Link] + NamePolicy=kernel database onboard slot path +-MACAddressPolicy=persistent ++MACAddressPolicy=none + + + +diff --git a/network/99-default.link b/network/99-default.link +index bca660ac28..31aee37e75 100644 +--- a/network/99-default.link ++++ b/network/99-default.link +@@ -13,4 +13,4 @@ OriginalName=* + [Link] + NamePolicy=keep kernel database onboard slot path + AlternativeNamesPolicy=database onboard slot path +-MACAddressPolicy=persistent ++MACAddressPolicy=none +diff --git a/test/fuzz/fuzz-link-parser/99-default.link b/test/fuzz/fuzz-link-parser/99-default.link +index feb5b1fbb0..3d755898b4 100644 +--- a/test/fuzz/fuzz-link-parser/99-default.link ++++ b/test/fuzz/fuzz-link-parser/99-default.link +@@ -9,4 +9,4 @@ + + [Link] + NamePolicy=keep kernel database onboard slot path +-MACAddressPolicy=persistent ++MACAddressPolicy=none diff --git a/SOURCES/0029-man-mention-System-Administrator-s-Guide-in-systemct.patch b/SOURCES/0029-man-mention-System-Administrator-s-Guide-in-systemct.patch new file mode 100644 index 0000000..df32d47 --- /dev/null +++ b/SOURCES/0029-man-mention-System-Administrator-s-Guide-in-systemct.patch @@ -0,0 +1,35 @@ +From 17a3bad51a7efefd6dc63249c49ddaabda6cbd19 Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn +Date: Thu, 28 Aug 2014 15:12:10 +0200 +Subject: [PATCH] man: mention System Administrator's Guide in systemctl + manpage + +RHEL-only + +Resolves: #1982596 +--- + man/systemctl.xml | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/man/systemctl.xml b/man/systemctl.xml +index 1c14909523..3b3d709ab3 100644 +--- a/man/systemctl.xml ++++ b/man/systemctl.xml +@@ -2455,6 +2455,17 @@ Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output err + + + ++ ++ Examples ++ ++ For examples how to use systemctl in comparsion ++ with old service and chkconfig command please see: ++ ++ Managing System Services ++ ++ ++ ++ + + See Also + diff --git a/SOURCES/0030-Net-naming-scheme-for-RHEL-9.0.patch b/SOURCES/0030-Net-naming-scheme-for-RHEL-9.0.patch new file mode 100644 index 0000000..793a4ee --- /dev/null +++ b/SOURCES/0030-Net-naming-scheme-for-RHEL-9.0.patch @@ -0,0 +1,56 @@ +From 464a8fc4e0b218793105431cc71bf98b0dc97fb5 Mon Sep 17 00:00:00 2001 +From: Jacek Migacz +Date: Thu, 3 Feb 2022 23:46:09 +0100 +Subject: [PATCH] Net naming scheme for RHEL-9.0 + +RHEL-only + +Resolves: #2052106 +--- + man/systemd.net-naming-scheme.xml | 7 +++++++ + src/shared/netif-naming-scheme.c | 1 + + src/shared/netif-naming-scheme.h | 1 + + 3 files changed, 9 insertions(+) + +diff --git a/man/systemd.net-naming-scheme.xml b/man/systemd.net-naming-scheme.xml +index 41408411fc..942ef572ff 100644 +--- a/man/systemd.net-naming-scheme.xml ++++ b/man/systemd.net-naming-scheme.xml +@@ -403,6 +403,13 @@ + + + ++ ++ rhel-9.0 ++ ++ Same as naming scheme v250. ++ ++ ++ + + + Note that latest may be used to denote the latest scheme known (to this +diff --git a/src/shared/netif-naming-scheme.c b/src/shared/netif-naming-scheme.c +index 245466c4cb..44d011a9b7 100644 +--- a/src/shared/netif-naming-scheme.c ++++ b/src/shared/netif-naming-scheme.c +@@ -23,6 +23,7 @@ static const NamingScheme naming_schemes[] = { + { "v247", NAMING_V247 }, + { "v249", NAMING_V249 }, + { "v250", NAMING_V250 }, ++ { "rhel-9.0", NAMING_RHEL_9_0 }, + /* … add more schemes here, as the logic to name devices is updated … */ + + EXTRA_NET_NAMING_MAP +diff --git a/src/shared/netif-naming-scheme.h b/src/shared/netif-naming-scheme.h +index 16b304ce10..f765db6ef2 100644 +--- a/src/shared/netif-naming-scheme.h ++++ b/src/shared/netif-naming-scheme.h +@@ -47,6 +47,7 @@ typedef enum NamingSchemeFlags { + NAMING_V247 = NAMING_V245 | NAMING_BRIDGE_NO_SLOT, + NAMING_V249 = NAMING_V247 | NAMING_SLOT_FUNCTION_ID | NAMING_16BIT_INDEX | NAMING_REPLACE_STRICTLY, + NAMING_V250 = NAMING_V249 | NAMING_XEN_VIF, ++ NAMING_RHEL_9_0 = NAMING_V250, + + EXTRA_NET_NAMING_SCHEMES + diff --git a/SOURCES/0031-core-decrease-log-level-of-messages-about-use-of-Kil.patch b/SOURCES/0031-core-decrease-log-level-of-messages-about-use-of-Kil.patch new file mode 100644 index 0000000..d536c44 --- /dev/null +++ b/SOURCES/0031-core-decrease-log-level-of-messages-about-use-of-Kil.patch @@ -0,0 +1,40 @@ +From 16c4a3c3a826d03f60db83c8d6d809d59e6f38ad Mon Sep 17 00:00:00 2001 +From: Michal Sekletar +Date: Tue, 22 Feb 2022 13:24:11 +0100 +Subject: [PATCH] core: decrease log level of messages about use of + KillMode=none + +RHEL-only + +Resolves: #2013213 +--- + src/core/load-fragment.c | 2 +- + src/core/unit.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c +index 92a52819e2..ad5a0912fc 100644 +--- a/src/core/load-fragment.c ++++ b/src/core/load-fragment.c +@@ -816,7 +816,7 @@ int config_parse_kill_mode( + } + + if (m == KILL_NONE) +- log_syntax(unit, LOG_WARNING, filename, line, 0, ++ log_syntax(unit, LOG_DEBUG, filename, line, 0, + "Unit configured to use KillMode=none. " + "This is unsafe, as it disables systemd's process lifecycle management for the service. " + "Please update your service to use a safer KillMode=, such as 'mixed' or 'control-group'. " +diff --git a/src/core/unit.c b/src/core/unit.c +index d2adb447b6..9cbed08987 100644 +--- a/src/core/unit.c ++++ b/src/core/unit.c +@@ -5458,7 +5458,7 @@ int unit_log_leftover_process_start(pid_t pid, int sig, void *userdata) { + + /* During start we print a warning */ + +- log_unit_warning(userdata, ++ log_unit_debug(userdata, + "Found left-over process " PID_FMT " (%s) in control group while starting unit. Ignoring.\n" + "This usually indicates unclean termination of a previous run, or service implementation deficiencies.", + pid, strna(comm)); diff --git a/SOURCES/0032-ci-replace-apt-key-with-signed-by.patch b/SOURCES/0032-ci-replace-apt-key-with-signed-by.patch new file mode 100644 index 0000000..8fc33a8 --- /dev/null +++ b/SOURCES/0032-ci-replace-apt-key-with-signed-by.patch @@ -0,0 +1,34 @@ +From be021c2328550a9d5b987cb206eda5df90b45acd Mon Sep 17 00:00:00 2001 +From: Evgeny Vereshchagin +Date: Sun, 26 Dec 2021 01:11:00 +0000 +Subject: [PATCH] ci: replace apt-key with signed-by + +to limit the scope of the key to apt.llvm.org only. + +This is mostly inspired by https://blog.cloudflare.com/dont-use-apt-key/ + +(cherry picked from commit bfa6bd1be098adc4710e1819b9cd34d65b3855da) + +Related: #2013213 +--- + .github/workflows/build_test.sh | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/.github/workflows/build_test.sh b/.github/workflows/build_test.sh +index 5b18784461..549e59b2c9 100755 +--- a/.github/workflows/build_test.sh ++++ b/.github/workflows/build_test.sh +@@ -80,9 +80,10 @@ if [[ "$COMPILER" == clang ]]; then + # llvm package if available in such cases to avoid that. + if ! apt show --quiet "llvm-$COMPILER_VERSION" &>/dev/null; then + # Latest LLVM stack deb packages provided by https://apt.llvm.org/ +- # Following snippet was borrowed from https://apt.llvm.org/llvm.sh +- wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - +- add-apt-repository -y "deb http://apt.llvm.org/$RELEASE/ llvm-toolchain-$RELEASE-$COMPILER_VERSION main" ++ # Following snippet was partly borrowed from https://apt.llvm.org/llvm.sh ++ wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | gpg --yes --dearmor --output /usr/share/keyrings/apt-llvm-org.gpg ++ printf "deb [signed-by=/usr/share/keyrings/apt-llvm-org.gpg] http://apt.llvm.org/%s/ llvm-toolchain-%s-%s main\n" \ ++ "$RELEASE" "$RELEASE" "$COMPILER_VERSION" >/etc/apt/sources.list.d/llvm-toolchain.list + PACKAGES+=("clang-$COMPILER_VERSION" "lldb-$COMPILER_VERSION" "lld-$COMPILER_VERSION" "clangd-$COMPILER_VERSION") + fi + elif [[ "$COMPILER" == gcc ]]; then diff --git a/SOURCES/0033-ci-fix-clang-13-installation.patch b/SOURCES/0033-ci-fix-clang-13-installation.patch new file mode 100644 index 0000000..6540c05 --- /dev/null +++ b/SOURCES/0033-ci-fix-clang-13-installation.patch @@ -0,0 +1,54 @@ +From b9b1f92cdc74beb8487c87aa2b5c2806e100d1aa Mon Sep 17 00:00:00 2001 +From: Frantisek Sumsal +Date: Tue, 22 Feb 2022 14:43:40 +0100 +Subject: [PATCH] ci: fix clang-13 installation + +For some reason Ubuntu Focal repositories now have `llvm-13` virtual +package which can't be installed, but successfully fools our check, +resulting in no clang/llvm being installed... + +``` +$ apt show llvm-13 +Package: llvm-13 +State: not a real package (virtual) +N: Can't select candidate version from package llvm-13 as it has no candidate +N: Can't select versions from package 'llvm-13' as it is purely virtual +N: No packages found + +$ apt install --dry-run llvm-13 +Reading package lists... Done +Building dependency tree +Reading state information... Done +Package llvm-13 is not available, but is referred to by another package. +This may mean that the package is missing, has been obsoleted, or +is only available from another source + +E: Package 'llvm-13' has no installation candidate +``` + +(cherry picked from commit b491d74064f9d5e17a71b38b014434237169a077) + +Related: #2013213 +--- + .github/workflows/build_test.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/.github/workflows/build_test.sh b/.github/workflows/build_test.sh +index 549e59b2c9..5a173a18d5 100755 +--- a/.github/workflows/build_test.sh ++++ b/.github/workflows/build_test.sh +@@ -78,12 +78,12 @@ if [[ "$COMPILER" == clang ]]; then + # ATTOW llvm-11 got into focal-updates, which conflicts with llvm-11 + # provided by the apt.llvm.org repositories. Let's use the system + # llvm package if available in such cases to avoid that. +- if ! apt show --quiet "llvm-$COMPILER_VERSION" &>/dev/null; then ++ if ! apt install --dry-run "llvm-$COMPILER_VERSION" >/dev/null; then + # Latest LLVM stack deb packages provided by https://apt.llvm.org/ + # Following snippet was partly borrowed from https://apt.llvm.org/llvm.sh + wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | gpg --yes --dearmor --output /usr/share/keyrings/apt-llvm-org.gpg + printf "deb [signed-by=/usr/share/keyrings/apt-llvm-org.gpg] http://apt.llvm.org/%s/ llvm-toolchain-%s-%s main\n" \ +- "$RELEASE" "$RELEASE" "$COMPILER_VERSION" >/etc/apt/sources.list.d/llvm-toolchain.list ++ "$RELEASE" "$RELEASE" "$COMPILER_VERSION" >/etc/apt/sources.list.d/llvm-toolchain.list + PACKAGES+=("clang-$COMPILER_VERSION" "lldb-$COMPILER_VERSION" "lld-$COMPILER_VERSION" "clangd-$COMPILER_VERSION") + fi + elif [[ "$COMPILER" == gcc ]]; then diff --git a/SPECS/systemd.spec b/SPECS/systemd.spec index cabe0b1..a1d9caf 100644 --- a/SPECS/systemd.spec +++ b/SPECS/systemd.spec @@ -21,7 +21,7 @@ Name: systemd Url: https://www.freedesktop.org/wiki/Software/systemd Version: 250 -Release: 3%{?dist} +Release: 4%{?dist} # For a breakdown of the licensing, see README License: LGPLv2+ and MIT and GPLv2+ Summary: System and Service Manager @@ -105,6 +105,12 @@ Patch0024: 0024-test-introduce-get_cgroup_hierarchy-helper.patch Patch0025: 0025-test-require-unified-cgroup-hierarchy-for-TEST-56.patch Patch0026: 0026-tests-rework-test-macros-to-not-take-code-as-paramet.patch Patch0027: 0027-test-allow-to-set-NULL-to-intro-or-outro.patch +Patch0028: 0028-udev-net-setup-link-change-the-default-MACAddressPol.patch +Patch0029: 0029-man-mention-System-Administrator-s-Guide-in-systemct.patch +Patch0030: 0030-Net-naming-scheme-for-RHEL-9.0.patch +Patch0031: 0031-core-decrease-log-level-of-messages-about-use-of-Kil.patch +Patch0032: 0032-ci-replace-apt-key-with-signed-by.patch +Patch0033: 0033-ci-fix-clang-13-installation.patch # Downstream-only patches (9000–9999) @@ -886,6 +892,14 @@ getent passwd systemd-oom &>/dev/null || useradd -r -l -g systemd-oom -d / -s /s %files standalone-sysusers -f .file-list-standalone-sysusers %changelog +* Wed Feb 23 2022 systemd maintenance team - 250-4 +- udev/net-setup-link: change the default MACAddressPolicy to "none" (#2009237) +- man: mention System Administrator's Guide in systemctl manpage (#1982596) +- Net naming scheme for RHEL-9.0 (#2052106) +- core: decrease log level of messages about use of KillMode=none (#2013213) +- ci: replace apt-key with signed-by (#2013213) +- ci: fix clang-13 installation (#2013213) + * Tue Feb 08 2022 systemd maintenance team - 250-3 - Treat EPERM as "not available" too (#2017035) - test: copy portable profiles into the image if they don't exist there (#2017035)