diff --git a/SPECS-SIGNED/systemd-boot-signed/systemd-boot-signed.spec b/SPECS-SIGNED/systemd-boot-signed/systemd-boot-signed.spec index c3d1fd46c5f..90b06e86d9f 100644 --- a/SPECS-SIGNED/systemd-boot-signed/systemd-boot-signed.spec +++ b/SPECS-SIGNED/systemd-boot-signed/systemd-boot-signed.spec @@ -20,7 +20,7 @@ Version: 255 # determine the build information from local checkout Version: %(tools/meson-vcs-tag.sh . error | sed -r 's/-([0-9])/.^\1/; s/-g/_g/') %endif -Release: 26%{?dist} +Release: 27%{?dist} License: LGPL-2.1-or-later AND MIT AND GPL-2.0-or-later Vendor: Microsoft Corporation Distribution: Azure Linux @@ -98,6 +98,9 @@ popd /boot/efi/EFI/BOOT/%{grubefiname} %changelog +* Fri Mar 13 2026 Dan Streetman - 255-27 +- Bump release to match systemd spec + * Tue Mar 03 2026 Dan Streetman - 255-26 - Bump release to match systemd spec diff --git a/SPECS/systemd/Prevent-corruption-from-stale-alias-state-on-daemon-reload.patch b/SPECS/systemd/Prevent-corruption-from-stale-alias-state-on-daemon-reload.patch new file mode 100644 index 00000000000..86160c805a6 --- /dev/null +++ b/SPECS/systemd/Prevent-corruption-from-stale-alias-state-on-daemon-reload.patch @@ -0,0 +1,43 @@ +From 4905c95118b3203f1117116cba8c8529763e8593 Mon Sep 17 00:00:00 2001 +From: Dan Streetman +Date: Fri, 13 Mar 2026 14:13:04 -0400 +Subject: [PATCH] Prevent corruption from stale alias state on daemon-reload + +Avoid incorrect systemd service unit state in certain conditions, to avoid pid1 +assert. Taken from unmerged upstream PR. + +Upstream PR: #39703 +https://github.com/systemd/systemd/pull/39703 + +Fixes: #38817 +https://github.com/systemd/systemd/issues/38817 + +All credit for identifying and debugging this problem goes to +Balakumaran Kannan + +--- + src/core/manager-serialize.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/core/manager-serialize.c b/src/core/manager-serialize.c +index e9d567a97b..4f7c315b4b 100644 +--- a/src/core/manager-serialize.c ++++ b/src/core/manager-serialize.c +@@ -204,6 +204,14 @@ static int manager_deserialize_one_unit(Manager *m, const char *name, FILE *f, F + return log_notice_errno(r, "Failed to load unit \"%s\", skipping deserialization: %m", name); + } + ++ if (!streq(u->id, name)) { ++ log_warning("Unit file for '%s' was overridden by a symlink to '%s'. Skipping stale state of old unit. Any processes from the overridden unit are now abandoned!", ++ name, ++ u->id); ++ ++ return unit_deserialize_state_skip(f); ++ } ++ + r = unit_deserialize_state(u, f, fds); + if (r < 0) { + if (r == -ENOMEM) +-- +2.51.0 + diff --git a/SPECS/systemd/systemd.spec b/SPECS/systemd/systemd.spec index 1dd8148e8b2..9564721f3f5 100644 --- a/SPECS/systemd/systemd.spec +++ b/SPECS/systemd/systemd.spec @@ -50,7 +50,7 @@ Version: 255 # determine the build information from local checkout Version: %(tools/meson-vcs-tag.sh . error | sed -r 's/-([0-9])/.^\1/; s/-g/_g/') %endif -Release: 26%{?dist} +Release: 27%{?dist} # FIXME - hardcode to 'stable' for now as that's what we have in our blobstore %global stable 1 @@ -149,6 +149,7 @@ Patch0905: ipc-call-0001-path-util-add-flavour-of-path_startswith-that-leav Patch0906: ipc-call-0003-core-cgroup-avoid-one-unnecessary-strjoina.patch Patch0907: ipc-call-0002-path-util-invert-PATH_STARTSWITH_ACCEPT_DOT_DOT-flag.patch Patch0908: ipc-call-0004-core-validate-input-cgroup-path-more-prudently.patch +Patch0909: Prevent-corruption-from-stale-alias-state-on-daemon-reload.patch %ifarch %{ix86} x86_64 aarch64 %global want_bootloader 1 @@ -1234,6 +1235,9 @@ rm -f %{name}.lang # %autochangelog. So we need to continue manually maintaining the # changelog here. %changelog +* Fri Mar 13 2026 Dan Streetman - 255-27 +- Prevent corruption from stale alias state on daemon-reload + * Mon Mar 02 2026 Dan Streetman - 255-26 - Apply patches for ipc issue.